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