勤修戒定慧熄灭贪嗔痴 2023-03-10 18:41 采纳率: 71.9%
浏览 15
已结题

vc6++i条件选择不成功



```c++
#include <iostream>
int main() {
    std::cout << "Hello World!\n";
    float num1,num2,result;
    char op;
    std::cout<<"输入操作数1,运算符,操作数2"<<std::endl;
    std::cin>>num1>>op>>num2;
    switch(op){
        case"+":result=num1+num2;break;
        case"-":result=num1-num2;break;
        case"*":result=num1*num2;break;
        case"/":result=num1/num2;break;
        default:std::cout<<op<<"无效运算符";
            }
    if(op=='+'||op=='-'||op==''||op=='/')
    std::cout<<num1<<op<<num2<<"="<<result<<std::endl;        
}





这是出错

/workspace/jiajianchengchu/main.cpp:9:13: error: value of type 'const char[2]' is not implicitly convertible to 'int'
        case"+":result=num1+num2;break;
            ^~~
/workspace/jiajianchengchu/main.cpp:9:33: error: character <U+FF1B> not allowed in an identifier
        case"+":result=num1+num2;break;
                                ^~
/workspace/jiajianchengchu/main.cpp:9:29: error: use of undeclared identifier 'num2;break'
        case"+":result=num1+num2;break;
                            ^
/workspace/jiajianchengchu/main.cpp:10:13: error: value of type 'const char[2]' is not implicitly convertible to 'int'
        case"-":result=num1-num2;break;
            ^~~
/workspace/jiajianchengchu/main.cpp:10:33: error: character <U+FF1B> not allowed in an identifier
        case"-":result=num1-num2;break;
                                ^~
/workspace/jiajianchengchu/main.cpp:10:29: error: use of undeclared identifier 'num2;break'
        case"-":result=num1-num2;break;
                            ^
/workspace/jiajianchengchu/main.cpp:11:13: error: value of type 'const char[2]' is not implicitly convertible to 'int'
        case"*":result=num1*num2;break;
            ^~~
/workspace/jiajianchengchu/main.cpp:11:33: error: character <U+FF1B> not allowed in an identifier
        case"*":result=num1*num2;break;
                                ^~
/workspace/jiajianchengchu/main.cpp:11:29: error: use of undeclared identifier 'num2;break'
        case"*":result=num1*num2;break;
                            ^
/workspace/jiajianchengchu/main.cpp:12:13: error: value of type 'const char[2]' is not implicitly convertible to 'int'
        case"/":result=num1/num2;break;
            ^~~
/workspace/jiajianchengchu/main.cpp:12:33: error: character <U+FF1B> not allowed in an identifier
        case"/":result=num1/num2;break;
                                ^~
/workspace/jiajianchengchu/main.cpp:12:29: error: use of undeclared identifier 'num2;break'
        case"/":result=num1/num2;break;
                            ^
/workspace/jiajianchengchu/main.cpp:15:30: warning: empty character constant [-Winvalid-pp-token]
    if(op=='+'||op=='-'||op==''||op=='/')
                             ^
/workspace/jiajianchengchu/main.cpp:15:30: error: expected expression
1 warning and 13 errors generated.


```

  • 写回答

3条回答 默认 最新

  • 社区专家-Monster-XH 2023-03-10 18:49
    关注

    img


    代码修改:

    #include <iostream>
    int main() {
        std::cout << "Hello World!\n";
        float num1, num2, result;
        char op;
        std::cout << "输入操作数1,运算符,操作数2" << std::endl;
        std::cin >> num1 >> op >> num2;
        switch (op) {
        case '+': result = num1 + num2; break;
        case '-': result = num1 - num2; break;
        case '*': result = num1 * num2; break;
        case '/': result = num1 / num2; break;
        default: std::cout << op << "无效运算符";
        }
        if (op == '+' || op == '-' || op == '*' || op == '/') {
            std::cout << num1 << op << num2 << "=" << result << std::endl;
        }
    }
    
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 3月22日
  • 已采纳回答 3月14日
  • 创建了问题 3月10日

悬赏问题

  • ¥15 宇视监控服务器无法登录
  • ¥15 PADS Logic 原理图
  • ¥15 PADS Logic 图标
  • ¥15 电脑和power bi环境都是英文如何将日期层次结构转换成英文
  • ¥15 DruidDataSource一直closing
  • ¥20 气象站点数据求取中~
  • ¥15 如何获取APP内弹出的网址链接
  • ¥15 wifi 图标不见了 不知道怎么办 上不了网 变成小地球了
  • ¥50 STM32单片机传感器读取错误
  • ¥50 power BI 从Mysql服务器导入数据,但连接进去后显示表无数据