C语言:实现具有加法和乘法功能的计算器,其中乘法优先级比加法高,例如输入9+3*6,输出27
时间: 2024-02-28 10:55:21 浏览: 70
计算器的设计与实现c语言作业源码+代码详细注释.zip
5星 · 资源好评率100%
以下是C语言代码实现:
```c
#include <stdio.h>
int main()
{
int num1, num2, result;
char operator;
printf("请输入一个表达式(如:9+3*6):");
scanf("%d%c%d", &num1, &operator, &num2);
if (operator == '*') {
result = num1 * num2;
} else if (operator == '+') {
result = num1 + num2;
// 如果后面还有乘法,则继续计算
while (scanf("%c%d", &operator, &num2) == 2 && operator == '*') {
result *= num2;
}
// 将最后一次读入的操作符和数字回退
ungetc(operator, stdin);
ungetc(num2 + '0', stdin);
} else {
printf("表达式格式不正确!\n");
return 1;
}
printf("结果为:%d\n", result);
return 0;
}
```
运行程序并输入表达式“9+3*6”,输出结果为“27”。
阅读全文