编程题 7-12 两个数的简单计算器【PAT】

文章目录

编程练习题目集目录

题目

要求编写一个简单计算器程序,可根据输入的运算符,对 2 2 个整数进行加、减、乘、除或求余运算。题目保证输入和输出均不超过整型范围。

输入格式

输入在一行中依次输入操作数 1 1 、运算符、操作数 2 2 ,其间以 1 1 个空格分隔。操作数的数据类型为整型,且保证除法和求余的分母非零。

输出格式

当运算符为 + 、 − 、 ∗ 、 / 、 +、-、*、/、% 时,在一行输出相应的运算结果。若输入是非法符号(即除了加、减、乘、除和求余五种运算符以外的其他符号)则输出 E R R O R ERROR

输入样例1

-7 / 2

输出样例1

-3

输入样例2

3 & 6

输出样例2

ERROR

题解

解题思路

首先输入操作数 1 1 、运算符、操作数 2 2 ,然后根据输入的字符(计算符号)判断,要进行何种运算,使用 s w i t c h switch 循环配合 b r e a k break 语句,将对应的输入计算出来,输出即可。
注:非法符号、被除数为 0 0 ,被取余数为 0 0 皆为 E R R O R ERROR

完整代码

#include<iostream> using namespace std; int main(void) { int x, y; char c; cout << "请输入 操作数1、运算符、操作数2:"; // 提交时注释此行 cin >> x >> c >> y; switch (c) { case '+': cout << x + y << endl; // 加法计算 break; case '-': cout << x - y << endl; // 减法计算 break; case '*': cout << x * y << endl; // 乘法计算 break; case '/': // 除法计算 if (x != 0) { cout << x / y << endl; break; } else // 被除数为 0,报错 { cout << "ERROR" << endl; break; } case '%': // 取余计算 if (x != 0) { cout << x % y << endl; break; } else // 被取余数为 0,报错 { cout << "ERROR" << endl; break; } default: cout << "ERROR" << endl; // 其它符号,报错 break; } return 0; }
本文是转载文章,点击查看原文
如有侵权,请联系 lx@jishuguiji.net 删除。