C++小学生四则运算测验(附代码和程序结果)
C语言课程设计小学生四则运算

#include"stdio.h"#include"stdlib.h"void main(){int a,b,c,d,e,f,g,t;printf("****************************欢迎使用!************************\n");printf("\n");printf("1.加法运算\n");printf("2.减法运算\n");printf("3.乘法运算\n");printf("4.除法运算\n");printf("*****************************请选择运算类型:");scanf("%d",&a);while(a<1||a>4){printf("输入错误,请重新输入");scanf("%d",&a);}if(a==1){printf("5,一位数加一位数\n");printf("6,一位数加两位数\n");printf("7,两位数加两位数\n");printf("*********************************请输入题型:");scanf("%d",&a);while(a<5||a>7){printf("输入错误,请重新输入");scanf("%d",&a);}if(a==5){loop:b=rand()%10;c=rand()%10;d=b+c;printf("%d+%d=?\n",b,c);printf("请输入答案:");scanf("%d",&e);while(e!=d){printf("回答错误,请重做");printf("%d+%d=?\n",b,c);printf("请输入答案:");scanf("%d",&e);}printf("回答正确!是否做下一题?\n");printf("输入0表示是,输入1表示否\n");scanf("%d",&f);if(f==0)goto loop;if(f==1)printf("欢迎再次使用!");}if(a==6){loo: b=rand()%10;c=rand()%100;if (c<10) c=c+10;d=b+c;printf("%d+%d=?\n",b,c);printf("请输入答案:");scanf("%d",&e);while(e!=d){printf("回答错误,请重做");printf("%d+%d=?\n",b,c);printf("请输入答案:");scanf("%d",&e);}printf("回答正确!是否做下一题?\n");printf("输入0表示是,输入1表示否\n");scanf("%d",&f);if(f==0)goto loo;if(f==1)printf("欢迎再次使用!");}if(a==7){loog:b=rand()%100;c=rand()%100;if(c<10) c=c+10;if(b<10) b=b+10;d=b+c;printf("%d+%d=?\n",b,c);printf("请输入答案:");scanf("%d",&e);while(e!=d){printf("回答错误,请重做");printf("%d+%d=?\n",b,c);printf("请输入答案:");scanf("%d",&e);}printf("回答正确!是否做下一题?\n");printf("输入0表示是,输入1表示否\n");scanf("%d",&f);if(f==0)goto loog;if(f==1)printf("欢迎再次使用!");}}if(a==2){printf("5,一位数减一位数\n");printf("6,两位数减一位数\n");printf("7,两位数减两位数\n");printf("请输入题型:");scanf("%d",&a);while(a<5||a>7){printf("输入错误,请重新输入");scanf("%d",&a);}if(a==5){car: b=rand()%10;c=rand()%10;d=b-c;printf("%d-%d=?\n",b,c);printf("请输入答案:");scanf("%d",&e);while(e!=d){printf("回答错误,请重做");printf("%d-%d=?\n",b,c);printf("请输入答案:");scanf("%d",&e);}printf("回答正确!是否做下一题?\n");printf("输入0表示是,输入1表示否\n");scanf("%d",&f);if(f==0)goto car;if(f==1)printf("欢迎再次使用!");}if(a==6){truck:b=rand()%100;if(b<10) b=b+10;c=rand()%10;d=b-c;printf("%d-%d=?\n",b,c);printf("请输入答案:");scanf("%d",&e);while(e!=d){printf("回答错误,请重做");printf("%d-%d=?\n",b,c);printf("请输入答案:");scanf("%d",&e);}printf("回答正确!是否做下一题?\n");printf("输入0表示是,输入1表示否\n");scanf("%d",&f);if(f==0)goto truck;if(f==1)printf("欢迎再次使用!");}if(a==7){boat:b=rand()%100;if(b<10) b=b+10;c=rand()%100;if(c<10) c=c+10;d=b-c;printf("%d-%d=?\n",b,c);printf("请输入答案:");scanf("%d",&e);while(e!=d){printf("回答错误,请重做");printf("%d-%d=?\n",b,c);printf("请输入答案:");scanf("%d",&e);}printf("回答正确!是否做下一题?\n");printf("输入0表示是,输入1表示否\n");scanf("%d",&f);if(f==0)goto boat;if(f==1)printf("欢迎再次使用!");}}if(a==3){printf("5,一位数乘一位数\n");printf("6,一位数乘两位数\n");printf("7,两位数乘两位数\n");printf("请输入题型:");scanf("%d",&a);while(a<5||a>7){printf("输入错误,请重新输入");scanf("%d",&a);}if(a==5){life:b=rand()%10;c=rand()%10;d=b*c;printf("%d*%d=?\n",b,c);printf("请输入答案:");scanf("%d",&e);while(e!=d){printf("回答错误,请重做");printf("%d*%d=?\n",b,c);printf("请输入答案:");scanf("%d",&e);}printf("回答正确!是否做下一题?\n");printf("输入0表示是,输入1表示否\n");scanf("%d",&f);if(f==0)goto life;if(f==1)printf("欢迎再次使用!");}if(a==6){shame:b=rand()%100;if(b<10) b=b+10;c=rand()%10;d=b*c;printf("%d*%d=?\n",b,c);printf("请输入答案:");scanf("%d",&e);while(e!=d){printf("回答错误,请重做");printf("%d*%d=?\n",b,c);printf("请输入答案:");scanf("%d",&e);}printf("回答正确!是否做下一题?\n");printf("输入0表示是,输入1表示否\n");scanf("%d",&f);if(f==0)goto shame;if(f==1)printf("欢迎再次使用!");}if(a==7){yeah:b=rand()%100;c=rand()%100;if(b<10) b=b+10;if(c<10) c=c+10;d=b*c;printf("%d*%d=?\n",b,c);printf("请输入答案:");scanf("%d",&e);while(e!=d){printf("回答错误,请重做");printf("%d*%d=?\n",b,c);printf("请输入答案:");scanf("%d",&e);}printf("回答正确!是否做下一题?\n");printf("输入0表示是,输入1表示否\n");scanf("%d",&f);if(f==0)goto yeah;if(f==1)printf("欢迎再次使用!");}}if(a==4){printf("5,一位数除一位数\n");printf("6,两位数除一位数\n");printf("7,两位数除两位数\n");printf("请输入题型:");scanf("%d",&a);while(a<5||a>7){printf("输入错误,请重新输入");scanf("%d",&a);}if(a==5){hit: b=rand()%10;c=rand()%10;{if (b>c){g=b%c;if (g!=0){b=b-g;d=b/c;printf("%d/%d=?\n",b,c);}else d=b/c;printf("%d/%d=?\n",b,c);}if (c>b){g=c%b;if (g!=0){c=c-g;t=c;c=b;b=t;d=b/c;printf("%d/%d=?\n",b,c);}elset=c;c=b;b=t;d=b/c;printf("%d/%d=?\n",b,c);}printf("请输入答案:");scanf("%d",&e);}while(e!=d){printf("回答错误,请重做");printf("%d/%d=?\n",b,c);printf("请输入答案:");scanf("%d",&e);}printf("回答正确!是否做下一题?\n");printf("输入0表示是,输入1表示否\n");scanf("%d",&f);if(f==0)goto hit;if(f==1)printf("欢迎再次使用!");}if(a==6){haha:b=rand()%100;c=rand()%10;if(b<10)b=b+10;g=b%c;if (g!=0)b=b-g;d=b/c;printf("%d/%d=?\n",b,c);printf("请输入答案:");scanf("%d",&e);while(e!=d){printf("回答错误,请重做");printf("%d/%d=?\n",b,c);printf("请输入答案:");scanf("%d",&e);}printf("回答正确!是否做下一题?\n");printf("输入0表示是,输入1表示否\n");scanf("%d",&f);if(f==0)goto haha;if(f==1)printf("欢迎再次使用!");}if(a==7){over:b=rand()%100;c=rand()%100;if(b<10) b=b+10;if(c<10) c=c+10;if (b>c){g=b%c;if (g!=0){b=b-g;d=b/c;printf("%d/%d=?\n",b,c);}else{d=b/c;printf("%d/%d=?\n",b,c);}}if (c>b){g=c%b;if (g!=0){c=c-g;t=c;c=b;b=t;d=b/c;printf("%d/%d=?\n",b,c);}else{t=c;c=b;b=t;d=b/c;printf("%d/%d=?\n",b,c);}}scanf("%d",&e);while(e!=d){printf("回答错误,请重做");printf("%d/%d=?\n",b,c);printf("请输入答案:");scanf("%d",&e);}printf("回答正确!是否做下一题?\n");printf("输入0表示是,输入1表示否\n");scanf("%d",&f);if(f==0)goto over;if(f==1)printf("欢迎再次使用!");}}}。
四则运算c语言编程

四则运算c语言编程四则运算是数学中常见的基本运算,也是编程语言中必须掌握的基本知识。
在C语言中,四则运算包括加、减、乘、除四个基本运算。
本文将介绍C语言中四则运算的使用方法和注意事项。
加法运算加法运算是最基本的运算之一,C语言中使用“+”符号进行加法运算。
例如,计算两个整数a和b的和,可以使用以下代码:int a = 5;int b = 3;int sum = a + b;printf("sum = %d\n", sum);在这个例子中,首先定义了两个整数a和b,并将它们相加得到sum变量的值。
最后使用printf函数将sum的值输出到屏幕上。
减法运算减法运算也是常见的运算之一,C语言中使用“-”符号进行减法运算。
例如,计算两个整数a和b的差,可以使用以下代码:int a = 5;int b = 3;int diff = a - b;printf("diff = %d\n", diff);在这个例子中,首先定义了两个整数a和b,并将它们相减得到diff变量的值。
最后使用printf函数将diff的值输出到屏幕上。
乘法运算乘法运算也是常见的运算之一,C语言中使用“*”符号进行乘法运算。
例如,计算两个整数a和b的积,可以使用以下代码:int a = 5;int b = 3;int product = a * b;printf("product = %d\n", product);在这个例子中,首先定义了两个整数a和b,并将它们相乘得到product变量的值。
最后使用printf函数将product的值输出到屏幕上。
除法运算除法运算也是常见的运算之一,C语言中使用“/”符号进行除法运算。
例如,计算两个整数a和b的商,可以使用以下代码:int a = 5;int b = 3;int quotient = a / b;printf("quotient = %d\n", quotient);在这个例子中,首先定义了两个整数a和b,并将它们相除得到quotient变量的值。
四则运算训练器软件C语言开发(软件代码+软件说明)

软件名称:四则运算训练器软件功能介绍:该软件主要用于训练并测试使用者的四则运算能力。
进入软件主界面,界面上会显示3 个选项,分别是:1.10以内的四则运算训练。
2.20以内的四则运算训练。
0.退出。
使用者根据自己的需要选择不同的选项:按“ 1”进入10 以内的四则运算训练;按“ 2”进入20 以内的四则运算训练;按“ 0”退出程序主界面。
10以内的四则运算和20以内的四则运算均为10题一组;在这10 个题中,加减乘除均有,操作数均为整数,且加减乘除出现的顺序不定,除法给出的两个操作数能除尽。
对于给出的题目,当操作者计算正确时,操作界面上无特殊显示;当操作者计算错误时,操作界面上会显示“ FAULT! ” 提示操作者该题计算错误并同时进入下一题。
操作者每做完10 道题,界面上会显示此轮计算的正确率,并询问操作者是否继续。
此时操作者可根据自己的需要,按“ 1”进入10 以内的四则运算训练;按“ 2”进入20 以内的四则运算训练;按“ 0”退出程序主界面。
程序代码:#include <stdio.h>#include <stdlib.h>#include <time.h>void calculation1();void calculation2();void main(){int number;char m;redo:printf("\t\t\t 欢迎进入四则运算训练营!\n\n\n\n");printf("<1>.10 以内的四则运算系列.\n");printf("<2>.20 以内的四则运算训练.\n");printf("<0>. 退出.\n\n");printf("请选择功能号(1 / 2 / 0 ):");scanf("%d",&number);srand((unsigned)time(0));loop: if(number==1) calculation1();else if(number==2) calculation2();else exit(0);printf("\n\n");printf("继续吗?( Y/N ):");getchar();scanf("%c",&m);if(m=='Y') goto loop;if(m=='N') goto redo;}void calculation1(){int i,j,n=0;int a1,a2,result;float rate;char c='%';printf(" 您选择的是10 以内的四则运算。
用c语言编写加减乘除程序

用c语言编写加减乘除程序加减乘除是数学上最基本的四则运算,而用计算机语言实现这些运算则是计算机科学最基本的知识之一。
在c语言中,实现四则运算需要使用基本的算术运算符,并需要注意数据类型的匹配。
加法运算是最简单的四则运算之一,使用c语言执行加法运算的方法是,用“+”符号分隔两个运算数并用“=”符号赋值给结果变量。
例如,将两个整数相加并输出结果,代码如下:```#include <stdio.h>int main(){int a = 5, b = 7, sum;sum = a + b;printf("The sum of %d and %d is %d", a, b, sum);}```这段代码将输出结果:“The sum of 5 and 7 is 12”,其中sum 变量存储了a和b两个变量的和。
减法运算的实现方法与加法运算类似,只需将运算符改为“-”即可,例如:```#include <stdio.h>int main(){int a = 5, b = 7, diff;diff = a - b;printf("The difference between %d and %d is %d", a, b, diff);}```这段代码将输出结果:“The difference between 5 and 7 is -2”,其中diff变量存储了a和b两个变量的差。
乘法运算可以使用“*”符号来实现,例如:```#include <stdio.h>int main(){int a = 5, b = 7, prod;prod = a * b;printf("The product of %d and %d is %d", a, b, prod);return 0;```这段代码将输出结果:“The product of 5 and 7 is 35”,其中prod变量存储了a和b两个变量的积。
C语言四则运算测试程序设计报告

昆明理工大学《计算机程序设计基础》课程综合实践型教学课题报告课题名称:100以内的整数四则运算测试程序设计组长:学号 040401067 姓名周绍平组员:学号 040401070 姓名邓磊学号 040401106 姓名刘云路学号姓名学号姓名学号姓名学号姓名学院:信自学院专业班级:自动化0421 指导教师:耿植林昆明理工大学计算中心2005 年 6月18日昆明理工大学计算中心《计算机程序设计基础》课程综合实践型教学课题报告课程名称:100以内的整数四则运算测试程序设计正文内容:一、问题描述这是一个进行数学计算的程序,且要求拥有多种功能,包括(1)选项菜单集成各功能函数模块(2)出题(每次出10道题目)(3)答题并评分(4)答错的题给出正确答案(5)显示答卷。
总体看来,大多数功能要求调用错题,所以面临的两个难题便是出题和保存答题者做错的题以便其它函数调用。
另外,由于除法的特殊性——其除数不能为0。
又因为这是一个用于100以内整数的四则运算的程序,又对除法这个特殊成员提出了新的要求——要使得到的结果为整数。
所以有必要把除法单独拿出来作为一个函数处理。
二、问题分析这是一个任务很明确的程序设计—用于100以内的整数的四则运算。
这个程序要求拥有选项菜单、出题、答题评分、显示答卷、错题再解、重复练习的功能。
既然是一个用于计算的程序那它的主要作用就是给练习者答题,并验证答题的正确与否。
当然,还要有一些附加功能,比如:把答卷显示出来,错题给出正解,错题再抽出来再做。
这个程序只要求100以内的四则运算,所以随机出现的数字只能是100以内的,并且要求其为整数。
不论是数据的输入与输出,都要求其为整数。
鉴于这个程序所要求达到的功能,我们小组决定把它分为计算、菜单、答卷、重做、正解、评价、除法七个函数模块。
对各成员的分工如下:计算、正解和菜单(周绍平)评价和除法(邓磊)答卷和重做(刘云路)主函数及各函数的连接则由小组成员共同完成。
c语言小学生四则运算练习题

c语言小学生四则运算练习题### C语言小学生四则运算练习题随着计算机编程教育的普及,越来越多的小学生开始接触编程。
C语言作为一门基础的编程语言,非常适合初学者学习。
四则运算是数学中的基本运算,通过编写C语言程序来实现四则运算,不仅可以锻炼小学生的逻辑思维,还能加深他们对编程语言的理解。
#### 题目一:加法运算编写一个C语言程序,实现两个整数的加法运算。
要求用户输入两个整数,程序输出它们的和。
```c#include <stdio.h>int main() {int num1, num2, sum;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);sum = num1 + num2;printf("它们的和是:%d\n", sum);return 0;}```#### 题目二:减法运算编写一个C语言程序,实现两个整数的减法运算。
要求用户输入两个整数,程序输出它们的差。
```c#include <stdio.h>int main() {int num1, num2, difference;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);difference = num1 - num2;printf("它们的差是:%d\n", difference);return 0;}```#### 题目三:乘法运算编写一个C语言程序,实现两个整数的乘法运算。
要求用户输入两个整数,程序输出它们的积。
```c#include <stdio.h>int main() {int num1, num2, product;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);product = num1 * num2;printf("它们的积是:%d\n", product);return 0;}```#### 题目四:除法运算编写一个C语言程序,实现两个整数的除法运算。
C语言四则运算

机电学部课程设计题目:小学生算术四那么运算测试程序姓名:黄超学号:202112110118班级:计算机科学与技术课程:程序设计方法学任课老师:顾保磊2021年6月28日课程设计任务书及成绩评定目录背景 (1)摘要 (1)功能要求................................................... . (2)设计流程 (3)程序执行 (4)程序 (5)程序 (6)程序 (7)程序 (8)实验结果 (9)实验结果 (10)实验心得…………………………………………....….. .11背景伴随着人类社会的进步,人们的计算工具也在不断的变化,从远古时期的结绳计数,到算筹,算盘,以及近代的机械计算机、计算尺,直至今天我们广泛运用的电子计算机。
计算工具的每一次进步,都导致科学技术发生深入的革命。
人类最初是用手指来作为记数和计算工具的。
在古代,人们还广泛地使用过筹码和结绳来作为记数和计算的工具,其中筹码可能采用石子、木棍、滑片等,每一个可以单独使用也可用工具在其刻上道使用。
我们中华民族的祖先,在公元前5世纪以前开场使用算筹。
利用算筹记数,用笔写下来就是筹算数字,当时这在世界上是非常先进的。
而作为我们的祖先对世界文明的重大奉献——四大创造之一的珠算盘,那么是人类经过设计加工,制造出来的第一种计算工具。
十六世纪以来,随着机械设计和制造程度的进步,同时也为了满足日益复杂的计算要求,许多科学家设计制造了以齿轮为主要构件的机械式计算机。
自从上个世纪四十年代电子计算机的创造,人类计算工具的开展进入了一个新纪元。
计算机以人类技术史上前所未有的高速度开展着,其主要构件由电子管、晶体管、集成电路,一直开展到运用超大规模集成电路。
计算机的计算速度也从每秒几千次算术计算,进步到每秒上万亿次算术计算。
摘要小学生四那么运算,是利用VC++软件编写的一程序,电脑可随机的出10道四那么运算题,每题非常。
答题者输入需要运算的数,其中要求算式面向小学1~2年纪,数的大小不超过50且运算的结果必须在0~50之间,答题者有三次答题时机,在这三次时机之内答出,系统会自动根据答案的正确与否,得出分数,按照相应的分数给出级别,80-90显示“GOOD〞,70-80显示“OK〞,60-70显示“PASS〞,60以下“TRY AGAIN〞功能要求题目:小学生算术四那么运算测试程序面向小学1~2年级学生,随机选择两个整数和加减法形成算式要求学生解答。
小学生四则运算项目C++实现

⼩学⽣四则运算项⽬C++实现项⽬相关要求1. (完成)使⽤ -n 参数控制⽣成题⽬的个数。
2. (完成)使⽤ -r 参数控制题⽬中数值(⾃然数、真分数和真分数分母)的范围。
该参数可以设置为1或其他⾃然数。
该参数必须给定,否则程序报错并给出帮助信息。
3. (完成)⽣成的题⽬中计算过程不能产⽣负数,也就是说算术表达式中如果存在形如e1 − e2的⼦表达式,那么e1 ≥ e2。
4. (完成)⽣成的题⽬中如果存在形如e1 ÷ e2的⼦表达式,那么其结果应是真分数。
5. (完成)每道题⽬中出现的运算符个数不超过3个。
6. (完成)程序⼀次运⾏⽣成的题⽬不能重复,即任何两道题⽬不能通过有限次交换+和×左右的算术表达式变换为同⼀道题⽬。
例如,23 + 45 = 和45 + 23 = 是重复的题⽬,6 × 8 = 和8 × 6 = 也是重复的题⽬。
3+(2+1)和1+2+3这两个题⽬是重复的,由于+是左结合的,1+2+3等价于(1+2)+3,也就是3+(1+2),也就是3+ (2+1)。
但是1+2+3和3+2+1是不重复的两道题,因为1+2+3等价于(1+2)+3,⽽3+2+1等价于(3+2)+1,它们之间不能通过有限次交换变成同⼀个题⽬。
⽣成的题⽬存⼊执⾏程序的当前⽬录下的Exercises.txt⽂件。
7. (完成)在⽣成题⽬的同时,计算出所有题⽬的答案,并存⼊执⾏程序的当前⽬录下的Answers.txt⽂件。
8. (完成)程序应能⽀持⼀万道题⽬的⽣成。
9. (完成)程序⽀持对给定的题⽬⽂件和答案⽂件,判定答案中的对错并进⾏数量统计,统计结果输出到⽂件Grade.txt。
代码规范本次项⽬的代码遵循了⾕歌代码规范(C++),但由于⾕歌代码规范篇幅太多,所以我们⽬前只遵循了其中的部分规范,具体如下:1. 禁⽌使⽤宏2. 分号以前不加空格3. ⾏宽原则上不超过804. ⼀⾏只定义⼀个变量5. 左⼤括号前保留⼀个空格6. if, else前后都要⼀个空格7. for, while后要有⼀个空格8. return 后⾯的数值不加 ( )9. 每个⽂件应该含有版权信息及作者10. 左圆括号之后和右圆括号之前⽆空格11. 函数参数过多时,每⾏的参数变量对齐12. ⼀⽬运算符与变量之间不加空格符隔开13. 禁⽌使⽤ using 指⽰(using-directive)14. 禁⽌使⽤C++的流,⽽是⽤printf之类的替代15. 要么函数名与参数同⾏,要么所有参数并排分⾏16. 换⾏代码缩进2个空格,并且使⽤两个空格符取代制表符17. ⼆⽬以上的运算符与变量,常量之间⽤空格隔开(各类括号除外)18. 不论控制语句,循环语句后⾯的循环体有多少⾏,都必须使⽤花括号19. 普通函数,类型(含类与结构体,枚举类型),常量等使⽤⼤⼩写混合,不含下划线20. 除函数定义的左⼤括号可置于⾏⾸以外,包括函数/类/结构体/枚举声明,各种语句的左⼤括号必须置于⾏末,所有右⼤括号独⽴成⾏设计思路具体设计&关键代码ImproperFraction类构建⼀个ImproperFraction的类,然后重载这个类的四种运算 +-x÷ 以及以及六种逻辑关系'<' '==' '<=' '!=' '>' '>='判断,在后续的代码编写之中都是基于这个类进⾏运算class ImproperFraction {public :ImproperFraction(){}ImproperFraction (int Mole, int Deno, int Coef = 0) {int g = std::__gcd (Mole, Deno);g = std::max(g, 1);mole = (Mole + Coef * Deno) / g;deno = Deno / g;}ImproperFraction operator + (const ImproperFraction & rhs ) const {int DENO = deno * rhs.deno;int MOLE = mole * rhs.deno + rhs.mole * deno;ImproperFraction res = ImproperFraction (MOLE, DENO);return res;}ImproperFraction operator - (const ImproperFraction & rhs ) const {int DENO = deno * rhs.deno;int MOLE = mole * rhs.deno - rhs.mole * deno;ImproperFraction res = ImproperFraction (MOLE, DENO);return res;}ImproperFraction operator * (const ImproperFraction & rhs ) const {int DENO = deno * rhs.deno;int MOLE = mole * rhs.mole;ImproperFraction res = ImproperFraction (MOLE, DENO);return res;}ImproperFraction operator / (const ImproperFraction & rhs ) const {int DENO = deno * rhs.mole;int MOLE = mole * rhs.deno;ImproperFraction res = ImproperFraction (MOLE, DENO);return res;}bool operator < (const ImproperFraction & rhs ) const {return mole * rhs.deno < rhs.mole * deno;}bool operator == (const ImproperFraction & rhs ) const {return mole * rhs.deno == rhs.mole * deno;}bool operator != (const ImproperFraction & rhs ) const {return !(mole * rhs.deno == rhs.mole * deno);}bool operator <= (const ImproperFraction & rhs ) const {return (*this) < rhs || (*this) == rhs;}bool operator > (const ImproperFraction & rhs ) const {return !((*this) <= rhs);}bool operator >= (const ImproperFraction & rhs ) const {return (*this) > rhs || (*this) == rhs;}private :int mole = 0; // 分⼦int deno = 1; // 分母};题集的⽣成表达式的⽣成在这⾥选择的是rand() 随机⽣成运算符个数,类型以及每个被运算的数值。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.程序功能介绍
电脑随机出10道加减乘除的题(允许随机给出的数在100以内),每题总分10分,程序结束时显示学生得分及学生的等级。
并且每道题学生有三次机会输入答案,当学生一次就答对是直接进入下一道题,当学生输入错误答案时,提醒学生重新输入,如果三次机会结束则输出正确答案最后,程序的最后给出学生的分数及其答案。
基本功能:
●电脑随机出10道题,每题10分,程序结束时显示学生得分;
●允许随机给出的数在100以内。
●每道题学生有三次机会输入答案,当学生输入错误答案时,提醒学生重新输入,
如果三次机会结束则输出正确答案;
●对于每道题目,学生第一次输入正确答案得10分,第二次输入正确答案得7
分,第三次输入正确答案得5分,否则不得分;
总成绩90分以上现实“SMART”,80~90分显示“GOOD”,70~80分显示“OK”,60~70分显示“PASS”,60分以下显示“TRY AGAIN”。
代码如下:
#include<iostream.h>
#include<time.h>
#include<stdlib.h> //标准库头文件
void main()
{
int t, num, a,n, i, b, k,s,r;
int score=0;
cout<<"==============欢迎使用小学生四则运算评测系统=============="<<endl;
srand(time(NULL)); //srand函数是以现在系统时间作为时间种子产生随机数
for(i=1;i<=10;i++)
{
a=rand()%100; //rand()是一个随机函数,i=rand()%100是在0-100内取随机值赋给m
loop: b=rand()%100; //j=rand()%100是在0-100内取随机值赋给j
n=rand()%4;
switch(n)
{
case 0:cout<<"*********第"<<i<<"题*********"<<endl;cout<<a<<"+"<<b<<"="; t=a+b; break;
case 1:cout<<"*********第"<<i<<"题*********"<<endl;cout<<a<<"-"<<b<<"="; t=a-b; break;
case 2:cout<<"*********第"<<i<<"题*********"<<endl;cout<<a<<"*"<<b<<"="; t=a*b; break;
case 3:cout<<"*********第"<<i<<"题*********"<<endl;cout<<a<<"/"<<b<<"=";
if(b==0) goto loop; t=a/b; break; //当分母为0的时候goto loop表示程序转去执行loop标记的那个语句
}
int cnt=1;
do
{
cin>>num;
if (num==t)
{
cout<<"正确!o(≧v≦)o~~好棒~"<<endl;
}
else
{
if (cnt<3)
cout<<"答案不正确?在试试吧!"<<endl;
cout<<"你还有"<<3-cnt<<"次答题机会"<<endl;
++cnt;
}
}while(cnt<=3&&num!=t);
if (num!=t)
cout<<"答案不正确!正确答案是:"<<t<<endl;
switch (cnt)
{
case 1:score+=10;break;
case 2:score+=7;break;
case 3:score+=5;break;
}
cout<<"-------------------------当前分数为"<<score<<endl; //输出当前的得分
}
cout<<"最后得分为"<<score<<" ";
if (score>90) //如果总分大于90
{
cout<<"SMART!"<<endl;
}
else if (score>80) //如果总分大于80
{
cout<<"GOOD!"<<endl;
}
else if (score>70) //如果总分大于70
{
cout<<"OK"<<endl;
}
else if (score>=60) //如果总分大于60
{
cout<<"PASS"<<endl;
}
else cout<<"TRY AGAIN"<<endl;
cout<<"\n";
}
2.设计结果。