#include <stdio.h> main() int a; int c; char b; scanf("%d%c%d",&a&b&c); if(b==+) { printf("%d+%d=%d\n",a,c,a+c); } if(b==-) { printf("%d-%d=%d\n",a,c,a-c); } if(b==*) { printf("%d*%d=%d\n",a,c,a*c); } if(b==/) { printf("%d/%d=%d\n",a,c,a/c); } return 0;
时间: 2024-04-10 13:26:53 浏览: 18
你的代码基本上是正确的,但有几个小错误需要修复。以下是修复后的代码:
```c
#include <stdio.h>
int main() {
int a;
int c;
char b;
scanf("%d%c%d", &a, &b, &c);
if(b == '+') {
printf("%d + %d = %d\n", a, c, a + c);
}
else if(b == '-') {
printf("%d - %d = %d\n", a, c, a - c);
}
else if(b == '*') {
printf("%d * %d = %d\n", a, c, a * c);
}
else if(b == '/') {
if(c != 0) {
printf("%d / %d = %d\n", a, c, a / c);
}
else {
printf("错误:除数不能为零!\n");
return 0;
}
}
else {
printf("错误:无效的操作符!\n");
return 0;
}
return 0;
}
```
在修复后的代码中,我做了以下几点改进:
1. 在 `main()` 函数之前添加了 `int` 关键字来明确函数的返回类型。
2. 修改了 `scanf` 函数的调用,确保正确读取输入数据。
3. 使用 `if-else if` 结构来判断操作符。
4. 对除法进行了除数不为零的检查。
这样,你应该能够正确运行计算器代码了。如果你对代码有任何疑问,请随时提问!