c++简单计算器求解

编写一个根据用户键入的两个操作数和一个运算符,由计算机输出运算结果的程序。当键入的两个操作数为0时,结束运算。
两个操作数和一个运算符(运算符只包括五个:+-*/%)。当键入的两个操作数为0时,结束运算。若出现其他非法运算符号,输出Error。若运算符为‘/’,除数为0时,输出Error。
每输入一组数据,则显示一个计算结果并换行等待键入下一组测试数据
最外层用while(1)的循环,内层用switch(ch)判断运算符号来进行计算。

回答如下:简单的C++程序(由于没有退出判断,会一直循环),代码如下:

#include<iostream>
using namespace std;

int main()     //计算器,+ - * / %,非法符号报错,除数为0报错 
{
    int a,b;
    char c;
    while(1){
        cout<<"输入操作数:";
        cin>>a>>b;        
        if((a==0) && (b==0)){
            cout<<"已退出"<<endl;
            break;
        }
        cout<<"输入操作符号(+ - * / % ):";
        cin>>c;
        switch(c){
            case '+':
                cout<<"Result is "<<a+b<<endl;
                continue;
            case '-':
                cout<<"Result is "<<a-b<<endl;
                continue;
            case '*':
                cout<<"Result is "<<a*b<<endl;
                continue;
            case '/':
                if(b==0){
                    cout<<"除数为0,ERROR"<<endl;
                }
                else{
                    cout<<"Result is "<<a/b<<endl;
                }
                continue;
            case '%':
                cout<<"Result is "<<a%b<<endl;
                continue;
            default:
                cout<<"非法输入,ERROR"<<endl;
                continue;
        }
    }
}