用C语言完成:先从屏幕输出算式,等待学生从键盘输入答案,若回答正确,则打印“Right!”,然后询问是否继续答题;若回答是“Y”则继续答题,若回答“N”则退出答题。统计并输出共出了多少题,做对了多少题?总分是多少
#include<stdlib.h>
#include<stdio.h>
#include<time.h>
int main()
{
srand((unsigned)time(NULL));//选取种子文件
int a,b,c,m=0,n=0;
a = rand()%9+1;
b = rand()%9+1;
while(1)
{
printf("%d * %d = ",a,b);
scanf("%d",&c);
getchar();
if(c==a*b)
{
printf("Right!");
m++;
}
else
printf("Error!");
n++;
printf("继续请输入Y,推出请输入N:");
char c = getchar();
if(c=='N')
break;
a = rand()%9+1;
b = rand()%9+1;
}
printf("总共%d题,做对%d题。总分为:%d",n,m,(int)(m*100.0/n));
return 0;
}
代码如下,如有帮助,请帮忙采纳一下,谢谢。
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
int main()
{
int i,j,c;
char ch;
int flag = 0;
int nTotal = 0,nRight = 0;
srand((unsigned int)time(NULL));
while (1)
{
i = rand()%9 +1;
j = rand()%9+1;
printf("%d * %d = ",i,j);
scanf("%d",&c);
nTotal++;
if(c == i*j)
{
nRight++;
printf("Right\n");
}
else
printf("Wrong\n");
printf("是否继续答题(Y/N):");
getchar(); //不要少了这一行
ch = getchar();
if(ch == 'N')
break;
}
printf("总共出了%d道题,作对了%d道题,总分%d",nTotal,nRight,nRight);
return 0;
}