[PTA]習題6-7 簡單計算器
阿新 • • 發佈:2021-05-03
[PTA]習題6-7 簡單計算器
模擬簡單運算器的工作。假設計算器只能進行加減乘除運算,運算數和結果都是整數,四種運算子的優先順序相同,按從左到右的順序計算。
輸入格式:
輸入在一行中給出一個四則運算算式,沒有空格,且至少有一個運算元。遇等號”=”說明輸入結束。
輸出格式:
在一行中輸出算式的運算結果,或者如果除法分母為0或有非法運算子,則輸出錯誤資訊“ERROR”。
輸入樣例:
1+2*10-10/2=
輸出樣例:
10
- 執行示例:
- 原始碼:
# include<stdio.h>
int main()
{
int number1, number2;
int flag; //控制錯誤資訊輸出
char ch;
scanf("%d", &number1);
flag = 1;
while ((ch = getchar()) != '=')
{
scanf("%d", &number2);
switch (ch)
{
case '+': number1 += number2; break;
case '-':number1 -= number2; break;
case '*':number1 *= number2; break;
case '/':
if (number2 == 0) //除數為0,修改flag為0,跳出switch
{
flag = 0;
break;
}
else
{
number1 /= number2; break;
}
default: flag = 0; break; //輸入了其它操作符,跳出switch
}
}
if (flag == 0)
{
printf("ERROR");
}
else
{
printf("%d", number1);
}
return 0;
}