



下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、#include <iostream>#include <stdlib.h>#include <ctime>#include <conio.h>using std:cin;using std:cout;using std:endl;/计算式 数量int const Num = 100;/计算式中 最大数int const MaxNum = 100;/每题分数int const PerMark = 1;/计算结果最大值int const MaxResult = 100;/计算结果最小值int const MinResult = 0;enum enO
2、pAdd,Subtract,Multiply,Divide;/将 枚举类型转换为字符类型,以便输出。char enum2char(enOp op) switch (op) case Add: return '+' case Subtract: return '-' case Multiply: return 'x' case Divide: return '/' return ' '/计算生成表达式的正确结果。int myResult(int left,int right,enOp op) switch (op)
3、case Add: return left+right; case Subtract: return left-right; case Multiply: return left*right; case Divide: return left/right; return 0;/检查生成计算式的正确与否。其中 减法结果不能为负数,除法结果不能为小数。bool checkFormula(int left,int right,enOp op) switch (op) case Add: return true; case Subtract: if(left < right) return fa
4、lse; return true; case Multiply: return true; case Divide: if(right = 0) return false; if(double(left/right) != double(double(left)/double(right) return false; return true; return false;/依据给定操作符,生成符合条件的表达式。void getFormula(int* left,int*right,enOp op) /srand(time(NULL); for(;) *left = 1 + rand() % Ma
5、xNum; *right = 1 + rand() % MaxNum; if(checkFormula(*left,*right,op) && myResult(*left,*right,op)<= MaxResult && myResult(*left,*right,op)>= MinResult) break; int main() /操作符左值 int leftNum; /操作符右值 int rightNum; /用户输入计算结果 int resultNum; /操作符 +-*/ enOp operNum; /正确答案个数 int answer
6、Right = 0; cout<<"正在生成,请稍等。"<<endl; /随机种子 srand(time(NULL); /开始生成计算表达式。 for(int i = 0;i<Num;i+) /srand( (unsigned)time(NULL); /操作符 operi = enOp(rand()%4); getFormula(&lefti,&righti,operi); cout<<"生成计算式完成,开始答题!"<<endl; /输出表达式,让用户答题 for(int i = 0;
7、i<Num;i+) /输出表达式 cout<<"第 "<<i+1<<" 题: n" cout<<lefti<<' '<<enum2char(operi)<<' '<<righti<< " = " /获取用户答案 cin>>resulti; /比对用户答案是否正确,正确输出 right,answerRigth加一,否则输出not correct。 if(resulti = myResult(lefti,righti,operi) cout<<"Right!n" answerRight+; else cout<<"Not correct!n" /全部答题完毕,输出正确答案个数及得分。 cout<<"终止答题,共 "<<Num<<" 题,每题 "<<PerMark<<" 分 ,答对 "
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 民爆安全培训课件
- 船舶机舱考试题库及答案
- 测量考试题库及答案解析
- 特色新质生产力发展模式与案例
- 发展新质生产力的主要做法
- 民族舞课程课件
- 全球新质生产力的发展现状
- 2025年微生物学临床微生物培养鉴定操作评估试卷答案及解析
- 三中全会新质生产力解读
- 2025年胸心外科胸部手术术中护理操作考核答案及解析
- 《劳动工具的改进设计》六年级综合实践课件
- 村级换届业务培训
- 《三角函数的诱导公式(第1课时)》导学案2
- 全国赛课一等奖2024版新教材统编版七年级历史上册《中华文明的起源》课件
- GB/T 22838.5-2024卷烟和滤棒物理性能的测定第5部分:卷烟吸阻和滤棒压降
- 江苏省镇江市2024-2025学年高三上学期期初考试数学试卷(解析版)
- 全国职业院校技能大赛高职组(供应链管理赛项)备赛试题库(含答案)
- JT叔叔医道课1-50集完整稿
- 部编版五年级道德与法治上册第3课《主动拒绝烟酒与毒品》精美课件(第3课时)
- JB-T 8881-2020 滚动轴承 渗碳轴承钢零件 热处理技术条件
- 2024年四川省水电投资经营集团普格电力有限公司招聘笔试参考题库含答案解析
评论
0/150
提交评论