7-20 簡單計算器 (20分)

瓊琚。發表於2020-11-23

7-20 簡單計算器 (20分)

題目描述如下:

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

輸入格式:

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

輸出格式:

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

輸入樣例:

1+2*10-10/2=

輸出樣例:

10

程式碼如下:

#include<stdio.h>
int main()
{
    int a,b;
    char c;
    scanf("%d",&a);
    while(scanf("%c",&c))
    {
        switch(c)
        {
            case '+':scanf("%d",&b);a+=b;break;
            case '-':scanf("%d",&b);a-=b;break;
            case '*':scanf("%d",&b);a*=b;break;
            case('/'):scanf("%d",&b);
			if(b==0)
            {
                printf("ERROR");return 0;
            }else
        	{
            	a/=b;break;
        	}
            case('='):printf("%d",a);return 0;
        	default:printf("ERROR");return 0;
        }
    }
}

相關文章