C语言通过计算机随机产生10道四则运算题,两个操作数为1~10之间的随机数,运算类型为随机产生的加、减、乘、整除中的任意一种,不给机会重做,如果学生回答正确,则显示" Right!",否则显示" Wrong!"。10道题全部做完后,按每题10分统计总得分,然后打印出总分和学生的回答正确率。
时间: 2024-03-06 17:51:56 浏览: 73
以下是使用C语言实现随机生成10道四则运算题,计算得分并输出正确率的示例代码:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main() {
int i, num1, num2, op, result, answer;
int score = 0;
srand(time(NULL)); // 初始化随机数种子
for (i = 1; i <= 10; i++) {
num1 = rand() % 10 + 1; // 生成1~10之间的随机数
num2 = rand() % 10 + 1;
op = rand() % 4; // 生成0~3之间的随机数,对应加减乘除操作
switch (op) {
case 0:
result = num1 + num2;
printf("%d. %d + %d = ", i, num1, num2);
break;
case 1:
result = num1 - num2;
printf("%d. %d - %d = ", i, num1, num2);
break;
case 2:
result = num1 * num2;
printf("%d. %d * %d = ", i, num1, num2);
break;
case 3:
result = num1 / num2;
printf("%d. %d / %d = ", i, num1, num2);
break;
}
scanf("%d", &answer);
if (answer == result) {
printf("Right!\n");
score += 10;
} else {
printf("Wrong!\n");
}
}
printf("Total score: %d\n", score);
printf("Correct rate: %.1f%%\n", score * 1.0 / 100 * 100);
return 0;
}
```
该程序使用srand函数初始化随机数种子,使用rand函数生成随机数。生成两个1~10之间的随机数,再生成一个0~3之间的随机数,根据不同的值进行加减乘除操作,并输出题目。使用scanf函数获取用户输入的答案,判断是否正确并累计得分。完成10道题后,输出总得分和正确率。
阅读全文