top1编程
← 返回题目
题解

简易计算器

1 条题解

  • 0
    @ 2026-8-5 12:14:09

    解题思路

    我们要做一个"四则运算计算器":输入两个正整数和一个运算符号(+、-、*、/),输出计算结果。

    做法很简单:根据符号选择不同的运算。

    • 符号是 +,就做加法;
    • 符号是 -,就做减法;
    • 符号是 *,就做乘法;
    • 符号是 /,就做除法。

    题目要求把"根据符号计算"写成一个 calcu() 函数,主程序读入 a、符号、b 之后调用它即可。

    打个比方:这就像一个"指令机器人",你告诉它运算符号,它就立刻执行对应的动作——加号就合在一起,减号就拿走一部分,乘号就加倍,除号就平均分。

    注意输入格式:数字、符号、数字之间都用空格隔开,比如 10 - 8。我们用 cin >> a >> s >> b 就能把这三个都读进来,符号 s 是 char 类型。

    参考代码

    // P4608 简易计算器:输入两个正整数和四则运算符号,输出计算结果
    #include <iostream>
    using namespace std;
    
    // calcu函数:根据运算符号s,计算a和b的结果
    int calcu(int a, int b, char s) {
        if (s == '+') return a + b;  // 加法
        if (s == '-') return a - b;  // 减法
        if (s == '*') return a * b;  // 乘法
        return a / b;                // 除法
    }
    
    int main() {
        int a, b;
        char s;
        cin >> a >> s >> b;  // 输入:数字、运算符号、数字
        cout << calcu(a, b, s) << endl;
        return 0;
    }
    

    复杂度分析

    • 不管输入什么,我们都只做一次运算,所以时间复杂度是 O(1)。
    • 我们只用了几个变量,空间复杂度也是 O(1)。

    计算器就像"一步到位"的机器人,任何数据都是瞬间出结果!

    • 1