用c语言输入一个四则运算表达式,输出运算结果,要求对除数为0的情况作特别处理。题目保证输入与输出均在双精度范围内。
时间: 2024-10-02 15:02:39 浏览: 60
ACM大数四则运算模板函数
5星 · 资源好评率100%
在C语言中,为了实现这个功能,你可以创建一个简单的程序来接收用户输入的四则运算表达式,并通过解析字符串来计算结果。这里是一个基本的示例:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
double calculate(double num1, double num2, char op) {
switch (op) {
case '+':
return num1 + num2;
case '-':
return num1 - num2;
case '*':
return num1 * num2;
case '/':
if (num2 == 0) {
printf("Error: Division by zero is not allowed.\n");
exit(1); // 异常处理
}
return num1 / num2;
default:
printf("Invalid operator.\n");
exit(1);
}
}
int main() {
double num1, num2;
char op;
char input[100];
printf("Please enter a mathematical expression in format 'number operation number': ");
fgets(input, sizeof(input), stdin);
// 去掉末尾的换行符
input[strlen(input) - 1] = '\0';
// 解析输入
sscanf(input, "%lf %c %lf", &num1, &op, &num2);
// 计算并输出结果
double result = calculate(num1, num2, op);
printf("The result of the expression is: %.2f\n", result);
return 0;
}
```
在这个程序中,`calculate`函数会根据操作符进行相应的数学运算。如果遇到除以零的情况,它会打印错误消息并退出程序。用户需要按照提示输入如 "5 + 3" 或者 "7 / 2" 这样的格式。
阅读全文