源代码:
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
main()
{ int a,b,c,d,i,j=0,n;
printf("请输入题数:");
scanf("%d",&n); //n选择产生题数
srand(time(NULL));
for(i=1;i<=n;i++)
{
b=rand()%100; //产生一个随机数
c=rand()%100;
a=rand()%4;
switch(a)
{
case 0:
printf("%d+%d=",b,c); scanf("%d",&d);
if(d==b+c){
printf("正确\n");
j++;} //判断对错,累计答对题数
else printf("错误\n");
break;
case 1:
if(b>=c){ //确保不出现负数
printf("%d-%d=",b,c);
scanf("%d",&d);
if(d==b-c){
printf("正确\n");
j++;}
else printf("错误\n");
break;}
else if(b<c){
printf("%d-%d=",c,b);
scanf("%d",&d);
if(d==c-b){
printf("正确\n");
j++;}
else printf("错误\n");
break;}
case 2:
printf("%d*%d=",b,c);
scanf("%d",&d);
if(d==b*c){
printf("正确\n");
j++;}
else printf("错误\n");
break;
case 3:
printf("(精确为整数)%d/%d=",b,c);
scanf("%d",&d);
if(d==b/c){
printf("正确\n");
j++;}
else printf("错误\n");
break;
}
} printf("\n恭喜,%d题答对了%d题!",n,j);
}
本次练习是一个较为简单的小程序,花费40分钟完成。但是功能仍然很不完善,有很多不足,如除法不能取余数,只能是简单的2个整数的四则运算,没有括号等优先级问题等!