習題2.1 簡單計算器 (20分)


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

輸入格式:

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

輸出格式:

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

輸入樣例:

1+2*10-10/2=
 

輸出樣例:

10

ps:不按照四則運算法則來進行運算。是從左到右的運算,不然不會得到10的結果;
#include<iostream>
#include<stdio.h>
using namespace std;

int main()
{
    int sum,num;
    char c;//存儲運算符
    scanf("%d%c",&sum,&c);//輸入第一個運算數和運算符
    while(c!='=')
    {
        scanf("%d",&num);
        if(c=='+')
        {
            sum+=num;
        }
        else if(c=='-')
        {
            sum-=num;
        }
        else if(c=='*')
        {
            sum*=num;
        }
        else if(c=='/')
        {
            if(num==0)
            {
                printf("ERROR");
                return 0;
            }
            else{
                sum/=num;
            }
        }
        else//當輸入不是+-*/的符號時
        {
            printf("ERROR");
            return 0;
        }
        scanf("%c",&c);//輸入運算符開始下一輪的循環
    }
        
    printf("%d",sum);

    return 0;
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM