题解 | #加减乘除#

加减乘除

https://www.nowcoder.com/practice/fdc56f9b00b34c70ad36c61ef89e3fc3

#include<bits/stdc++.h>
using namespace std;

//求阶乘函数
int jiecheng(int n) {
    if (n == 0 || n == 1) {
        return 1;
    } else {
        return n * jiecheng(n - 1);
    }
}
//完成其他运算的函数
void calculate(int num1, char op, int num2) {
    switch (op) {
        //加法运算
        case '+':
            cout << num1 + num2 << endl;
            break;
        //减法运算
        case '-':
            cout << num1 - num2 << endl;
            break;
        //乘法运算
        case '*':
            cout << num1* num2 << endl;
            break;
        //除法运算
        case '/': {
                if (num2 == 0) { //若除数为零则输出error
                    cout << "error" << endl;
                } else {
                    cout << num1 / num2 << endl;
                }
                break;
            }
        //求余运算
        case '%': {
                if (num2 == 0) { //若第二个运算数为零则输出error
                    cout << "error" << endl;
                } else {
                    cout << num1 % num2 << endl;
                }
                break;
            }
        default:
            break;
    }
}
int main() {
    int num1, num2; //两个参与运算的整数
    char op;//运算符
    while (cin >> num1 >> op) {
        //如果当前运算符不是求阶乘,则输入两个参与运算的数以及运算符
        if (op != '!') {
            cin >> num2;
            calculate(num1, op, num2);
        }
        //如果是求阶乘,则无需输入第二个整数
        else {
            cout << jiecheng(num1) << endl;
        }
    }
}

全部评论

相关推荐

05-13 00:41
已编辑
北京邮电大学 Java
理性的杰克刷牛客:ai肯定要有的,最好学一下agent方向加一个智能客服什么的进去,并且多加点什么skill,mcp啥的,另外你现在的项目深度有些浅,这些功能都太简单了,而且也不是真正能扛高并发的实现,没有什么太大的亮点,可以去网上找点更有深度的项目。可以先投一些中小厂,有实习经历以后再去大厂,你现在这个大厂可能机会不大
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务