结伴:宫成荣 韩媛媛
需求分析:
为小学生能够出四则运算的题,并且能对其所答的答案进行判断,如答错能显示正确答案。
部分代码:
int calculate(int a,int b,int c) { int num; switch(b) { case 0:num=a+c;break; case 1:num=a-c;break; case 2:num=a*c;break; } return num; }
使用函数对加减乘进行计算。
char str[]="+-*/",ch; srand((unsigned)time(0)); printf("请输入本次测试的题目数量:"); //手动输入题目数量 scanf("%d",&num); ch=getchar(); printf("保留两位小数 "); //输入结果如果有小数,保留两位小数 for(i=0;i<num;i++) { a=rand()%100+1; //生成随机数 b=rand()%100+1; n=rand()%4; printf("题号:%d",i+1); printf(" %d %c %d= ",a,str[n],b); if(n<=2) //加减乘的运算的生成 { answer1=calculate(a,n,b); scanf("%d",&s1); ch=getchar(); if(answer1==s1) printf("正确 "); else printf("错误 正确答案是:%d ",answer1); } else if(n==3) //除法运算的生成 { answer2=(float)(a)/(float)(b); scanf("%-5.2f",&s2); ch=getchar(); if(answer2==s2) printf("正确 "); else printf("错误 正确答案是:%-5.2f ",answer2); } }
运行结果:
个人体会:
结伴项目算的上是一种挑战,思路不同,细节方面也不一致。最主要的问题是没考虑除法的得数,直接用整数算了。编译通过,但是结果不对,最后用条件语句改进了。 期间做了很多,失败很多,索性重新做。让人体会的编程的不容易,现在还不会分部编程,以后要好好学习。