无论选择啥选项,函数“void sub(int Subtraction)”都会保持打印[关闭]

Posted

技术标签:

【中文标题】无论选择啥选项,函数“void sub(int Subtraction)”都会保持打印[关闭]【英文标题】:Function "void sub(int Subtraction)" keeps printing no matter what choice is selected [closed]无论选择什么选项,函数“void sub(int Subtraction)”都会保持打印[关闭] 【发布时间】:2019-10-28 16:36:25 【问题描述】:

我正在尝试为用户提供选项,让他们从挑选的两个数字中选择和求解一个方程(加、子、Mul、Div)。每次我测试输出时,无论选择什么,它都会打印 void sub(Subtraction) 函数

int main()

    if(c.userchoice==1)
    
        c.add(c.Addition);
    
    else if (c.userchoice=2)
    
        c.sub(c.Subtraction);
    
    else if (c.userchoice=3)
    
        c.mul(c.Multiplication);
           
    else if (c.userchoice=4)
    
        c.div(c.Division);
    

这是我为 add、mul、sub、div 设置的函数。他们被设置在一个公共班级中。很确定这是一个快速修复,只是由于某种原因我没有看到它。

void add(int Addition)

    if(userchoice==1)
    
            cout << "Enter two numbers: ";
            cin >> usernumber1;
            cin >> usernumber2;

            equationanswer = usernumber1 + usernumber2;


            cout << usernumber1 << "+" << usernumber2 << "= ? ";
            cin >> useranswer;
    


void sub(int Subtraction)

    if(userchoice==2)
                   
            cout << "Enter two numbers: ";
            cin >> usernumber1;
            cin >> usernumber2;

            equationanswer = usernumber1 - usernumber2;

            cout << usernumber1 << "-" << usernumber2 << "= ? ";
            cin >> useranswer;
    
 

void mul(int Multiplication)

        if(userchoice==3)
                  
            cout << "Enter two numbers: ";
            cin >> usernumber1;
            cin >> usernumber2;

            equationanswer = usernumber1 * usernumber2;

            cout << usernumber1 << "x" << usernumber2 << "= ? ";
            cin >> useranswer;
        
 

void div(int Division)

        if(userchoice==4)
                   
            cout << "Enter two numbers: ";
            cin >> usernumber1;
            cin >> usernumber2;

            cout << usernumber1 << "/" << usernumber2 << "= ? ";
            cin >> useranswer;

            equationanswer = usernumber1  % usernumber2;
         

【问题讨论】:

你需要==s,而不是== 是赋值,== 是相等检查。投票结束是一个错字。 您可能需要阅读switchcase 声明。此功能非常适合 switch 语句。 @ThomasMatthews 我刚刚看了一个关于这些的 Cherno 视频,甚至没想过要实现它 【参考方案1】:

我认为您需要将“=”替换为“==”。

'=' 这是赋值运算符。

【讨论】:

@Dame 如果对您有所帮助,请标记此答案(打勾)。 @Dame -- 通常要等一两天才能接受答案。许多人懒得去阅读已经有公认答案的问题,所以你很可能最终会错过一个更好的答案。

以上是关于无论选择啥选项,函数“void sub(int Subtraction)”都会保持打印[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

火狐浏览器无论打开啥网页都显示"您的连接并不安全" 是怎么回事?

无论我尝试啥,我的不和谐机器人自然会阻止 DM 选项

自定义级别打不开,无论运行啥都打不开?

无论在 UICollectionView 中选择啥 IndexPath,只有最后一个单元格会被突出显示

无论我选择啥,我的 Web 表单都只插入下拉列表中的第一项

无论选择哪个选项卡,都显示顶部栏