#include <stdlib.h>
int main(void)
{
int n1,n2 /* 运算数 */
char opd /* 加减法 */
unsigned cnt,rst,rcnt
int i,fg
randomize()/* 产生随机数种子 */
/* 输入题数 */
printf("count: ")
scanf("%u",&cnt)
rcnt=0/* 回答正确的题数 */
for(i=0i<cnti++)
{
/* 根据加减法产生随机数 */
switch(rand()%2) /* 随机产生加减法 */
{
case 0:
fg=1opd='+'
n1=rand()%10
n2=rand()%10
break
case 1:
fg=-1opd='-'
n1=1+rand()%9
n2=rand()%n1
break
}
printf("%d%c%d=",n1,opd,n2)
scanf("%u",&rst)/* 输入结果 */
/* 对运算结果进行判断 */
if(rst==n1+fg*n2)
{
puts("Right")
rcnt++
}
else puts("Error")
}
/* 小结 */
printf("\n---------------------------\n")
printf("All: %u\n",cnt)
printf("Right: %u\n",rcnt)
printf("Error: %u\n",cnt-rcnt)
printf("Rate: %u%%\n",rcnt*100/cnt)
return 0
}
这是基本算法,如果还有什么问题,百度HI我,讨论。。