Coursera 学习记录:运算符判定
程序员文章站
2024-01-04 15:49:58
...
描述
两个整数 a 和 b 运算后得到结果 c。表示为:a ? b = c,其中,?可能是加法 +,减法 -,乘法 *,整除 / 或 取余 %。
请根据输入的 a,b,c 的值,确定运算符。如果某种运算成立,则输出相应的运算符,如果任何运算都不成立,则输出 error
.例如: 输入: 3,4,5 输出: error 若输入: 3,4,3 则输出: % 输入 a b和 c 的值在意行内输入,以逗号间隔 输出 五个运算符之一或 error
思考误区
原本想着用switch语句,结果反而误入歧途。
因为case的需要是常量。比起直接if要麻烦更多。
#include<iostream>
using namespace std;
/*
char sign = '\0';
char fun(int a, int b, int c) {
int c1, c2, c3, c4, c5;
c1 = a + b;
c2 = a - b;
c3 = a * b;
c4 = a / b;
c5 = a % b;
char sign;
switch (c) {
}
return sign;
}
*/
int main() {
int a, b, c;
char dot;
cin >> a >> dot >> b >> dot >> c;
/*
if (fun(a, b, c) == '\0') {
cout << "error" << endl;
}
else {
cout << fun(a, b, c) << endl;
}
*/
if (c == (a + b)) {
cout << '+' << endl;
}
else if (c == (a - b)) {
cout << '-' << endl;
}
else if (c == (a * b)) {
cout << '*' << endl;
}
else if (c == (a / b)) {
cout << '/' << endl;
}
else if (c == (a % b)) {
cout << '%' << endl;
}
else{
cout << "error" << endl;
}
return 0;
}