• 本人博客:https://bsheepcoder.github.io/
#include <stdlib.h>
#include<stdio.h>
#include<time.h>
#define N 20  //定义一个时间以s为单位,要求时间至少够做5题/*程序名:算数游戏 时间:2020.12.24 制作人:Bsheepcoder 内容: 用户需在规定时间内尽可能多的做题,题目内容是完成两个10以内数相加和相减。
*/
struct  tm  * GetTime( time_t  *t)    //声明一个获取时间的结构指针
{struct  tm  * loctm;time (t);                //获取Unix时间戳。loctm = localtime  (t);   //转为时间结构。
}void NewNumber(int *p1, int *p2);  //生成两个10以内随机数
int Sum(int a , int b);            //两数和
int Minus(int a , int b);          //两数差的绝对值
void Judge(int sum,int a,int minus,int b,int *k);   //判断用户输入的结果是否正确
int TimeCnt( struct  tm  *localtime,struct  tm  begintime); //返回剩余答题时间
int InTime(struct  tm  *lt1 ,time_t  t , int *pn, int *pk); //答题时间内的操作,输入两个数。
int AwardLangurage(int *cnt,int *k);int main(void)
{time_t  T;  int cnt = 0, k = 0 ;  //printf(">>  %ds时间,准备开始了吗?\n",N);printf(">>  按enter 开始  ||  输任意值退出\n",N);if(getchar() == '\n'){//定义一个时间变量 struct  tm  *lt1;   //定义一个时间结构体指针 struct  tm  begin;int time;          //定义一个时间差 lt1 =  GetTime(&T);    //指针指向此时时间 begin = * lt1;     //记录开始的时间指针的时间 while(1){time =  TimeCnt(lt1,begin);   //传入开始时间 ,返回剩余时间 printf(">—————剩余 %ds——————<\t\n",time);if(time >= 0){InTime(lt1,T,&cnt,&k);    }else{printf(">>  停!时间到!\t\n");printf(">>  共 %d 题, 答对 %d 题\t\n",cnt,k);switch (AwardLangurage(&cnt,&k)){case 0: printf("完全正确!你太厉害了!");break;case 1: printf("优秀!我看好你!");break;case 2: printf("良好!你很有潜力!");break;case 3: printf("一般,你需要多练习!");break;case 4: printf("加油,不要放弃!");break;case 5: printf("你完美的躲过了正确答案!");break;case 6: break;default:break;};printf(">>  按任意键退出\t\n",N);break; }} getchar();getchar(); //防止程序闪退 }return 0;
}void NewNumber(int *p1, int *p2)
{int born ;srand((unsigned)time(NULL));*p1 = (rand()+2 * rand())%10;   //取一个随机数 p1 *p2 = (rand() * rand()+rand())%10;   // 取一个随机数 p2
}
int Sum(int a , int b)   //两数和
{int sum;sum = a + b;return sum;
}int Minus(int a , int b)   //两数差的绝对值
{int minus;if(a < b){minus = b - a;}else{minus = a - b;}return minus;
}void Judge(int sum,int a,int minus,int b,int *k)
{if(a == sum && b == minus){printf(" 正确!\n");*k = *k + 1;}else{printf(" 错误!\n");}
}
/*功能:判断时间差,以此为依据退出循环参数:时间结构指针、开始时间
*/
int TimeCnt( struct  tm  *localtime,struct  tm   begintime) //传入
{int  minus;if(localtime->tm_min > begintime.tm_min){minus = localtime->tm_sec + 60 - begintime.tm_sec ;}else{minus = localtime->tm_sec - begintime.tm_sec ;}return (N - minus) ;
}
/*功能:规定时间内的动作参数:时间结构指针、时间变量、计题数、计答对题数
*/
int InTime(struct  tm  *lt1 ,time_t  t , int *pn, int *pk)
{int new1, new2, answer1, answer2;int i,sum, begin , minus;NewNumber(&new1,&new2);sum = Sum(new1,new2);minus = Minus(new1,new2);printf("   >>  %d  +/- %d = ?\t\n",new1 ,new2);*pn = *pn + 1;scanf("%d %d",&answer1, &answer2);Judge(sum,answer1,minus,answer2,pk);lt1 =  GetTime(&t);return 0;
}
/*功能:用答错的题数来判断评价参数:题数、答对的题数
*/
int AwardLangurage(int *cnt,int *k)    {int LangurageStand;int error =  *cnt - *k ; // 错误的题数if(*cnt > 10){if (error == 0 )     //0%以内{ LangurageStand = 0;}else if(error < (*cnt)/5)  //20%{LangurageStand = 1;}else if(error < 2*(*cnt)/5)  //40%{LangurageStand = 2;}else if(error < 4*(*cnt)/5)   //80%{LangurageStand = 3;}else if(error < *cnt)         //100%{LangurageStand = 4;}else{LangurageStand = 5;}}else   //  5个题以内{if (error == 0 )     { printf("完全正确!你太厉害了!");}else if(error < *cnt){printf("还需努力!");}else{printf("你需要更多练习!");}LangurageStand = 6;}return LangurageStand;
}

不是很难,不过很适合小盆友来学习算数

还可以写成乘法算数类型

哈哈

C语言编写的算数小游戏(附源码)相关推荐

  1. html实现扫雷小游戏(附源码)

    文章目录 实现功能 1.扫雷设计 1.1 主界面 1.2 扫雷难度 1.3 附带功能 2.效果和源码 2.1 动态效果 2.2 源代码 源码下载 作者:xcLeigh 文章地址:https://blo ...

  2. 【Python游戏】用Python 和 Pyglet 编写一个我的世界小游戏 | 附源码

    相关文件 想学Python的小伙伴可以关注小编的公众号[Python日志] 有很多的资源可以白嫖的哈,不定时会更新一下Python的小知识的哈!! 需要源码的小伙伴可以在公众号回复我的世界 Pytho ...

  3. 用C语言easyx库来写一个简单的翻翻乐小游戏(附源码素材)

    简明目录 写在前面 easyx库 准备工作 新建项目文件 分析 素材分析 上代码吧 地图表示 开始界面 地图初始化(打乱) 游戏过程实现 主函数的实现 测试 优化 1.游戏分数 2.游戏时间 3.nu ...

  4. C语言实现三子棋小游戏(源码+教程)

    我猜中了开头,却猜不到这结局.--<大话西游> 目录 1.设计框架 2.设计流程 2.1菜单 2.2初始化棋子 2.3初始化棋盘 2.4玩家输入落子的坐标 2.5电脑随机生成棋子 2.6判 ...

  5. 【Python游戏】Python基于pygame实现的人机大战的斗兽棋小游戏 | 附源码

    前言 有粉丝说要我出一期Python版本的斗兽棋,今天宠粉狂魔的我不就来啦!! 虽然是一个简单的小游戏,但是对于新手小伙伴来说还是有一定的小难度的哟!要是不理解都可以找到小编的哈!! 相关文件 关注小 ...

  6. 整理了30款Python小游戏附源码,五一有的玩了

    快到五一了,整理了 30 款 Python 小游戏源码分享给大家,具体内容可以点击下方视频号查看: 点击上方视频后,源码获取方式:①关注上方视频号.②点赞当前视频.③在当前视频评论区扣1 友情提示:获 ...

  7. 【Python游戏】基于化学方程式的基础上,用Python实现一个消灭泡泡小游戏 | 附源码

    前言 halo,包子们下午好 今天实现的这个小游戏呀,说实话化学不太好的小伙伴可能看起来会有点懵逼 不过不用担心,咱们今天不是来学化学的,我们是来学习Python的 所以呀,不要太担心啦,大家先好好看 ...

  8. 【博主推荐】html好看的拼图小游戏(附源码)

    拼图目录 html好看的拼图小游戏 1.拼图效果示意图 1.1 第一级 九宫格拼图 1.2 第二级 十六宫格拼图 1.3 第三级 三十二宫格拼图 14 第三级 八十一宫格拼图 2.图片切图说明 3.实 ...

  9. 一口气用Python写了13个小游戏 (附源码)

    大家好,今天给大家分享13个游戏源码,可以自己复现玩玩,研究下里面的编程逻辑,对学习编程(特别是初学者)应该会有很大帮助. 由于文章较长,大家记得滑到文末点个赞哈- 1.吃金币 源码分享: impor ...

  10. 【Python游戏】基于pygame实现的一个Dino Rush 恐龙宝贝冲冲冲的小游戏 | 附源码

    前言 halo,包子们晚上好 很久没有更新啦,主要是小编这边最近有点小忙 今天给大家整一个Dino Rush 恐龙宝贝冲冲冲的小游戏 还是一个比较记经典的小游戏,还记这可谷歌浏览器上没有网也能打发时间 ...

最新文章

  1. 继承有几种方式,分别是什么,想要实现继承可以使用哪些方法
  2. oracle-sqlloader的简单使用
  3. 机器学习中常见的损失函数
  4. axios-引入-常用语法-源码
  5. 苹果失策?新iPhone捆绑Apple TV+或会致硬件利润率下滑
  6. 电脑怎么彻底删除软件_电脑强力卸载工具,删除电脑无用软件,让电脑更加快捷顺畅...
  7. Xshell中用./startup.sh启动时候提示权限不够
  8. 去除右键菜单中图形属性、图形选项
  9. 从菜鸟到资深工程师的进阶之路-任玉刚专访
  10. 批量将 xlsx 文件 转换 为 csv文件
  11. 简单二叉树的模型和解法(C++)
  12. quartus利用锁相环产生时钟_一种快速位同步时钟提取方案及实现
  13. ios 系统状态栏样式修改_iOS_状态栏字体颜色修改(完美解决)
  14. 经管资源库项目总结----在线预览office文件的实现与总结
  15. 二元函数对xy同时求导_关于反三角函数及其导数
  16. SqlServer存储过程触发HTTP请求
  17. 将idea设置为中文
  18. 工业产品类计算机绘图师,全国计算机绘图师考试试题汇总.pdf
  19. 携手用友低代码开发,德鑫物联将RFID融入企业服务大生态
  20. Maven 集成 Wagon

热门文章

  1. vbs整人代码蓝屏_求大量VBS整人代码.
  2. 安装mysql2005出错_SQL Server 2005 安装遇到的错误提示和解决方法
  3. 极智AI | 量化实现分享一:详解 min-max 对称量化算法实现
  4. 整理了两天!B站最全Java学习视频和学习路线
  5. 晨风机器人回复词库_qq机器人词库大全下载
  6. IDEA快捷键的使用
  7. 服装商品销售数据分析
  8. 河北省应用计算机模拟考试,河北省职称计算机考试模拟系统
  9. android 模拟gps坐标,android中模拟器中实现GPS坐标改变
  10. 计算机的3d软件家庭版,3DOne家庭版 64位