C语言读入一道形如A+B=C的四则运算题,正确则输出"GOOD!",错误输出"SORRY!"。 其中两个运算数为1到100范围以内的随机整数,运算符为加减乘除四种运算之一。
时间: 2024-10-29 09:12:51 浏览: 9
小学生四则运算练习系统(C++实现)
5星 · 资源好评率100%
在C语言中,你可以通过以下步骤设计一个程序来实现这个功能:
1. 首先,你需要包含必要的头文件,比如`stdio.h`用于输入输出,以及`stdlib.h`用于生成随机数。
```c
#include <stdio.h>
#include <stdlib.h>
```
2. 使用`srand()`函数设置随机数种子,确保每次运行得到不同的随机数。
```c
srand(time(0));
```
3. 生成两个1到100范围内的随机整数作为运算数,并选择一个运算符。
```c
int num1 = rand() % 100 + 1; // 1到100的随机数
int num2 = rand() % 100 + 1;
char operator = '+'; // 初始化为加法
// 添加其他三种运算符的可能性
int op_choice = rand() % 4;
if (op_choice == 1) {
operator = '+';
} else if (op_choice == 2) {
operator = '-';
} else if (op_choice == 3) {
operator = '*';
}
```
4. 计算结果,然后让用户输入猜测的结果。
```c
int result;
switch (operator) {
case '+':
result = num1 + num2;
break;
case '-':
result = num1 - num2;
break;
case '*':
result = num1 * num2;
break;
default: // 如果是除法,需要检查除数是否为零
if (num2 != 0) {
result = num1 / num2;
} else {
printf("SORRY! Division by zero is not allowed.\n");
return;
}
}
```
5. 接收用户的输入并比较它与实际结果。
```c
scanf("%d", &guess);
if (guess == result) {
printf("GOOD!\n");
} else {
printf("SORRY!\n");
}
```
6. 最后别忘了处理用户输入的边界情况和关闭输入流。
```c
scanf("\n", NULL); // 清理缓冲区
getchar(); // 清理换行符
fclose(stdin); // 关闭输入流
```
阅读全文