1 条题解
-
0
【例23.3】 简单计算器
解题思路
根据运算符选择加减乘除。除法先检查分母是否为 0;不支持的符号输出 Invalid operator!。
正确性说明
每个合法符号对应一个确定运算,零除与非法符号分支单独处理,覆盖要求的正常与异常情况。
易错点
输入顺序是两个数、再运算符;除法为整数除法。
复杂度
输入规模固定,时间 O(1),额外空间 O(1)。
参考代码(C++11)
#include <bits/stdc++.h> using namespace std; int main() { ios::sync_with_stdio(false); cin.tie(nullptr); long long a, b; char op; cin >> a >> b >> op; if (op == '+') cout << a + b; else if (op == '-') cout << a - b; else if (op == '*') cout << a * b; else if (op == '/') { if (b == 0) cout << "Divided by zero!"; else cout << a / b; } else cout << "Invalid operator!"; cout << "\n"; return 0; }
- 1