1. 程式人生 > >習題6-7 簡單計算器(20 分)

習題6-7 簡單計算器(20 分)

模擬簡單運算器的工作。假設計算器只能進行加減乘除運算,運算數和結果都是整數,四種運算子的優先順序相同,按從左到右的順序計算。

輸入格式:

輸入在一行中給出一個四則運算算式,沒有空格,且至少有一個運算元。遇等號”=”說明輸入結束。

輸出格式:

在一行中輸出算式的運算結果,或者如果除法分母為0或有非法運算子,則輸出錯誤資訊“ERROR”。

輸入樣例:

1+2*10-10/2=

輸出樣例:

10
#include<stdio.h>
int main()
{
	int i, sum, isnan=0;
	char op='0';
	scanf("%d", &sum);
	while(op!='='){
		scanf("%c", &op);
		if(op=='=')
			break;
		scanf("%d", &i);
		if(op=='+')
			sum=sum+i;
		else if(op=='-')
			sum=sum-i;
		else if(op=='*')
			sum=sum*i;
		else if(op=='/'){
			if(i!=0)
				sum=sum/i;
			else
				isnan=1;
		}
		else
			isnan=1;
	}
	if(isnan==1)
		printf("ERROR");
	else
		printf("%d\n", sum);
		
	return 0;
}