習題6-7 簡單計算器 (20 point(s))
阿新 • • 發佈:2019-01-13
習題6-7 簡單計算器 (20 point(s))
模擬簡單運算器的工作。假設計算器只能進行加減乘除運算,運算數和結果都是整數,四種運算子的優先順序相同,按從左到右的順序計算。
輸入格式:
輸入在一行中給出一個四則運算算式,沒有空格,且至少有一個運算元。遇等號”=”說明輸入結束。
輸出格式:
在一行中輸出算式的運算結果,或者如果除法分母為0或有非法運算子,則輸出錯誤資訊“ERROR”。
輸入樣例:
1+2*10-10/2=
輸出樣例:
10
#include<stdio.h> int main(){ int i,sum,flag=0; char op='0'; scanf("%d",&sum); while(op!='='){ scanf("%c",&op); if(op=='='){ break; } scanf("%d",&i); if(op=='-') sum-=i; else if(op=='+') sum+=i; else if(op=='*') sum*=i; else if(op=='/'){ if(i!=0) sum/=i; else flag=1; } else flag=1; } if(flag==1) printf("ERROR"); else printf("%d",sum); return 0; }