给定程序 c4-2-4.c 的功能是:实现 2 个浮点数的四则运算。 如输入:4.0 * 5.2,则打印出:4.0*5.2=20.8。程序的运行结果如图 4-4 所示,请完善程 序,并运行出正确的结果。
时间: 2024-10-28 19:10:44 浏览: 14
c程序设计第四版答案(谭浩强)
4星 · 用户满意度95%
给定的程序 `c4-2-4.c` 的功能是接收两个浮点数作为输入,然后进行加法、减法、乘法和除法的运算,并将结果以 "操作符 = 结果" 的形式输出。为了完善并运行程序,你需要包含适当的头文件,定义运算函数,获取用户输入,以及输出运算结果。这是一个简化后的版本:
```c
#include <stdio.h>
#include <math.h> // 需要这个头文件来进行除法运算,防止整数除法
// 定义运算函数
void perform_operation(float a, float b, char op) {
switch (op) {
case '+':
printf("%.1f %c %.1f = %.1f\n", a, op, b, a + b);
break;
case '-':
printf("%.1f %c %.1f = %.1f\n", a, op, b, a - b);
break;
case '*':
printf("%.1f %c %.1f = %.1f\n", a, op, b, a * b);
break;
case '/':
if (b != 0) { // 防止除以零错误
printf("%.1f %c %.1f = %.1f\n", a, op, b, a / b);
} else {
printf("Error: Division by zero is not allowed.\n");
}
break;
default:
printf("Invalid operator.\n");
break;
}
}
int main() {
float num1, num2;
char operation;
// 获取用户输入
printf("Enter the first number: ");
scanf("%f", &num1);
printf("Enter the second number: ");
scanf("%f", &num2);
printf("Enter an operator (+, -, *, /): ");
scanf(" %c", &operation);
// 检查输入是否有效
if (operation == '+' || operation == '-' || operation == '*' || operation == '/') {
perform_operation(num1, num2, operation);
}
return 0;
}
```
现在你可以运行这个程序,输入像 "4.0 * 5.2" 的指令,它会输出 "4.0 * 5.2 = 20.8"。
阅读全文