#include<stdio.h> #include<stdlib.h> void main() { int b=0,c,d=0,e,f; int x,right=0,wrong=0; while(1) { x=rand()%4; c=rand()%100; e=rand()%100; switch(x) { case 0: printf("%d + %d =",c,e); break; case 1: printf("%d - %d =",c,e); break; case 2: printf("%d * %d =",c,e); break; case 3: printf("%d ÷ %d =",c,e); break; } scanf("%d",&f); switch(x) { case 0: if(f==c+e) { printf("计算正确! ");right++; } else { printf("计算错误! ");wrong++; } break; case 1: if(f==c-e) { printf("计算正确! ");right++; } else { printf("计算错误! ");wrong++; } break; case 2: if(f==c*e) { printf("计算正确! ");right++; } else { printf("计算错误! ");wrong++; } break; case 3: if(f==c/e) { printf("计算正确! ");right++; } else { printf("计算错误! ");wrong++; } break; } printf("按任意键继续,q则退出! "); // scanf("%d",&quit); // if(quit==0) fflush(stdin); if(getchar()=='q') break; } printf("共答对%d道题,共答错%d道题 ",right,wrong); }
感想:一开始看到题目有点懵,因为不知道题目要求的是什么,这个好解决,只要上网百度什么是四则运算就好了,然后再就是设置两个自动生成数字,调用rand()函数就会生成了。加减乘除共有四种方式,可以用switch,case或者if,else这两种,在这里我用switch,case来分别计算四种情况,然后再用一个switch,case来分别判断四种情况的错与对,并统计整错与错误的题数,在这里没有限制答多少道题目,当你不想答题时,输入q即退出答题程序了。总的来说,这道程序题简单,易编程。