闲来无事,用c++写了个加减法练习的小程序,代码如下:

#include<iostream>
#include<stdlib.h>
#include<windows.h>
#include<conio.h>
#include<time.h>
using namespace std;
int score=0,counter=0,righter=0;
const int rangeRandom(int nummin,int nummax=32767)
{srand((int)time(NULL));if (nummin>nummax){swap(nummin,nummax);}int another_num=nummax-nummin;if (another_num<=0){ return 0;}else if (another_num<32767){return nummin+(rand()%another_num);}else{return nummin+int(((rand()%32767)/32767)*another_num);}
}
const int plusused(int m,int n,int p,int q){int righter=0;cout<<"接下来我们开始做"<<n<<"以内的加法练习~(共"<<p<<"题)"<<endl;Sleep(600);for(counter=0;counter<p;counter++){ int a=rangeRandom(m,n),c,d;Sleep(1000);int b=rangeRandom(m,n);cout<<a<<"+"<<b<<"="<<"?"<<endl;cout<<"请输入答案:";cin>>d;c=a+b;if(c==d){ cout<<"答对啦"<<endl;righter++; score=score+10;}else{cout<<"答错了"<<endl;}}Sleep(600);cout<<"第"<<q<<"轮游戏结束"<<endl;cout<<"____________________________"<<endl;Sleep(500);cout<<"你在这一轮中对了"<<righter<<"道题"<<endl<<"累计得到了"<<score<<"分"<<endl;if(righter>=0.8*p){if(q<=3){    plusused(m+=10,n+=15,10,++q);}}else{cout<<"LOW  CORRECT  RATE"<<endl<<"GAME  OVER"<<endl;system("pause");return 0; }
}
const int minusused(int x,int y,int z,int u){int righter=0;cout<<"接下来我们开始做"<<y<<"以内的减法练习~(共"<<z<<"题)"<<endl;Sleep(600);for(counter=0;counter<z;counter++){ int a=rangeRandom(x,y),c,d;Sleep(1000);int b=rangeRandom(x,y);if(a<b){int interval=b;b=a;a=interval;} cout<<a<<"-"<<b<<"="<<"?"<<endl;cout<<"请输入答案:";cin>>d;c=a-b;if(c==d){ cout<<"答对啦"<<endl;righter++; score=score+10;}else{cout<<"答错了"<<endl;}}Sleep(600);cout<<"第"<<u+3<<"轮游戏结束"<<endl;cout<<"____________________________"<<endl;Sleep(500);cout<<"你在这一轮中对了"<<righter<<"道题"<<endl<<"累计得到了"<<score<<"分"<<endl;if(righter>=0.8*z){if(u<=3){    minusused(x+=10,y+=15,10,++u);}}else{cout<<"LOW  CORRECT  RATE"<<endl<<"GAME  OVER"<<endl;system("pause");return 0;}
}
const int mixused(int ma,int mb,int mc,int md){int righter=0;cout<<"接下来我们开始做"<<mb<<"以内的混合计算~(共"<<mc<<"题)"<<endl;Sleep(600);for(counter=0;counter<mc;counter++){int a=rangeRandom(ma,mb),d,e;Sleep(1000);int b=rangeRandom(ma,mb);Sleep(1000);int c=rangeRandom(ma,mb);if(counter%2==0){d=a+b-c;if(d>0){cout<<a<<"+"<<b<<"-"<<c<<"=?";}else{d=-d;cout<<c<<"-"<<a<<"-"<<b<<"=?";}}else{d=a-b+c;if(d>0){cout<<a<<"-"<<b<<"+"<<c<<"=?";}else{d=-d;cout<<b<<"-"<<a<<"-"<<c<<"=?";}}cout<<"请输入答案:";cin>>e;if(e==d){cout<<"答对啦"<<endl;righter++;score=score+10; }else{cout<<"答错了"<<endl;}}Sleep(600);cout<<"第"<<md+6<<"轮游戏结束"<<endl;cout<<"____________________________"<<endl;Sleep(500);cout<<"你在这一轮中对了"<<righter<<"道题"<<endl<<"累计得到了"<<score<<"分"<<endl;if(righter>=0.8*mc){if(md<=3){    minusused(ma+=10,mb+=15,10,++md);}}else{cout<<"LOW  CORRECT  RATE"<<endl<<"GAME  OVER"<<endl;system("pause");return 0;}
}
int main()
{cout<<"让我们一起开始做加减法吧~"<<endl;Sleep(600); plusused(1,10,10,1);minusused(1,10,10,1);mixused(1,10,15,1);cout<<"恭喜你,全部通关~[撒花][撒花]"<<endl;Sleep(600);cout<<"我们下次再见哦~"<<endl;Sleep(600);system("pause");return 0;
}

本人c++小白,程序写的可能不大好,求各位大神指教~

c++小程序之加减法练习相关推荐

  1. 微信小程序进行加减法运算的小技巧

    Page({ data: { lastpasslevel:6, }, togame: function () { var nowlevel = this.data.lastpasslevel-1+2; ...

  2. python小程序---20以内的加减法进位运算

    同事家的小朋友上了一年级,学校布置作业要学习20以内的加减法运算,而且必须是有进位或者减位的. 比如18-9=9 或者7+6=13 觉得专门写一堆题目没啥意思,于是用python+tkinter写个小 ...

  3. 微信小程序----事件绑定

    前言 小程序中绑定事件, 通过bind关键字来实现.如: bindtap bindinput bindchanges等不同的组件支持不同的事件,具体查看组件的说明即可. 今天我们来了解bindtap和 ...

  4. 小程序黑马优购商城项目讲解

    小程序优购商城项目讲解 在我们开始之前 我们需要配好该项目所需要的接口文档以及配好相应的页面,以免在开发过程中会出现遗漏的问题出现. 首先我们要知道优购是分为4部分的 分别为 首页/列表/购物车/我的 ...

  5. Python练手小项目——随机加减法生成器

    为了让外甥女练习算术,用python给她写了个自动出加减法的小程序. 该程序使用了文字转语音的库pyttsx,程序运行时,会有相对应的语音提示.pyttsx文档 为了防止小孩乱按键盘,导致非法输入,我 ...

  6. 开发了一个微信小程序项目

    学会一项开发技能最快的步骤就是:准备,开火,瞄准.最慢的就是:准备,瞄准,瞄准,瞄准-- 因为微信小程序比较简单,直接开撸就行,千万别瞄准. 于是乎,趁着今天上午空气质量不错,撸了一个小程序,放在了男 ...

  7. 微信小程序实战篇-购物车

    哈喽,大家好,快半个月没写了,现在提笔都有点生硬了,一直没更新的原因,一个是代码君也要上班,加上最近工作比较忙,还有就是写文章一直未被认可,所以没什么动力再创作了,那时真的坚持不下去,打算放弃了,感谢 ...

  8. [微信官方文档] 小程序-错误码信息与解决方案表

    错误码信息与解决方案表 错误码是通过binderror回调获取到的错误信息. 代码 异常情况 理由 解决方案 1000 后端错误调用失败 该项错误不是开发者的异常情况 一般情况下忽略一段时间即可恢复. ...

  9. 微信小程序页面之间数据传递

    微信小程序跳转界面传递数据,要传递的数据拼接在url 后面实现 下面看一个简单的demo 传递数据 要传递界面 wxml <!--index.wxml--> <view class= ...

最新文章

  1. Intellij IDEA的下载和使用(针对学生的免费使用计划)
  2. SRM 563 Div1 500 SpellCards
  3. html中运行php脚本,php脚本在html文件中
  4. 我理解的配置管理系统
  5. pytest第一版 入门学习
  6. hibernate配置
  7. 【APUE】孤儿进程与僵死进程
  8. 如何正确的使用微信公众号
  9. django中的Ajax文件上传
  10. 新冠感染池检测选取最优池检测人数(概率模型理论公式+蒙特卡洛matlab仿真)
  11. 设计测试用例的7点原则
  12. 使用ESP8266/ESP8285做一个WIFI中继(WiFi信号放大器)
  13. React antd antd-mobile修改Switch组件尺寸大小
  14. 计算机科学与技术民办大学排名,计算机科学与技术专业排名:这95所大学实力很强,包括公办、民办和中外合办院校...
  15. eclipse下载速度过慢的解决方法
  16. javax.crypto.BadPaddingException: Given final block not properly padded
  17. docker(十)—— Windows系统下安装docker
  18. Displayport 连接、握手时序
  19. android进度条随时间走,每天一点Android干货-时间与日期、进度条
  20. 网络 3.0 路由器概述

热门文章

  1. 下载超过1GB的文件失败问题排查及解决
  2. 北京航空航天大学王田苗教授:人工智能与机器人前沿科技发展与投资布局
  3. 哈佛大学 47 清华大学 中国 1911年
  4. Python解一元一次方程和一元二次方程,输出数学形式和小数形式
  5. SQLZOO——JOIN Quiz 2
  6. java map去重_用map集合去重汇总
  7. 软考初级程序员易错题:在统一建模语言 (UML)中,( )展现了 一组对象以及它们之间的关系, 给出了系统的静态设计视图或静态进程视图,描述了( )中所建立的事物 实例的静态快照。
  8. django错误-You have 18 unapplied migration(s). Your project may not work properly until you apply the
  9. Unity 3D 创建简单的几何模型 || Unity 3D Assets 游戏资源目录管理
  10. vue+elementui+quill富文本框实现(富文本框最大化和最小化)