C语言设计一个程序,实现如下的功能:由计算机生成10道100以内的2个数加法的式子,由用户进行解答,每道题有3次答题机会,第一次答对得10分,第二次答对得9分,第三次答对得8分,三次都答不对得0分,最后输出每道题的得分情况和最后的总分。
时间: 2024-05-08 10:14:53 浏览: 94
```
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
int i, j, answer, score, total_score = 0;
srand((unsigned)time(NULL)); // 初始化随机数种子
// 生成10道100以内的加法题
for (i = 1; i <= 10; i++) {
int a = rand() % 100 + 1;
int b = rand() % 100 + 1;
printf("第%d题:%d + %d = ", i, a, b);
// 用户最多答3次
for (j = 1; j <= 3; j++) {
scanf("%d", &answer);
if (answer == a + b) {
// 根据答题次数计算得分
if (j == 1) {
score = 10;
} else if (j == 2) {
score = 9;
} else {
score = 8;
}
printf("恭喜你,答对了!得%d分。\n", score);
total_score += score;
break;
} else {
printf("回答错误,请重新作答:");
}
}
// 三次都答错
if (j == 4) {
printf("很抱歉,正确答案是%d,本题得0分。\n", a + b);
}
}
printf("总得分为:%d分\n", total_score);
return 0;
}
```
阅读全文