为什么我的输出显示计算器中的每个选项? 我正在用C++(VisualStudio)做一个计算器,让你选择你想要的操作(加法、减法、乘法和除法),然后输入两个数字并得到答案。但是当我运行程序,在四个选项中选择并输入两个数字时,程序会显示每个选项的答案。这是代码,请告诉我我做错了什么,我应该做什么来显示我所做选择的答案 #include <iostream> using namespace std; int main() { int Q1Number, Num1, Num2, Answer; cout << "Welcome!" << endl; cout << "" << endl; cout << "Write the number to begin:" << endl; cout << " 1- Addition " << endl; cout << " 2- Subtraction " << endl; cout << " 3- Multiplication " << endl; cout << " 4- Division " << endl; cin >> Q1Number; cout << "Enter The first number"; cin >> Num1; cout << "Enter The second number"; cin >> Num2; if (Q1Number = 1) Answer = Num1 + Num2; cout << " Answer is : " << Answer << endl; if (Q1Number = 2); Answer = Num1 - Num2; cout << " Answer is : " << Answer << endl; if (Q1Number = 2); Answer = Num1 * Num2; cout << " Answer is : " << Answer << endl; if (Q1Number = 2); Answer = Num1 / Num2; cout << " Answer is : " << Answer << endl; } #包括 使用名称空间std; int main() { 整数Q1,Num1,Num2,答案; cout

为什么我的输出显示计算器中的每个选项? 我正在用C++(VisualStudio)做一个计算器,让你选择你想要的操作(加法、减法、乘法和除法),然后输入两个数字并得到答案。但是当我运行程序,在四个选项中选择并输入两个数字时,程序会显示每个选项的答案。这是代码,请告诉我我做错了什么,我应该做什么来显示我所做选择的答案 #include <iostream> using namespace std; int main() { int Q1Number, Num1, Num2, Answer; cout << "Welcome!" << endl; cout << "" << endl; cout << "Write the number to begin:" << endl; cout << " 1- Addition " << endl; cout << " 2- Subtraction " << endl; cout << " 3- Multiplication " << endl; cout << " 4- Division " << endl; cin >> Q1Number; cout << "Enter The first number"; cin >> Num1; cout << "Enter The second number"; cin >> Num2; if (Q1Number = 1) Answer = Num1 + Num2; cout << " Answer is : " << Answer << endl; if (Q1Number = 2); Answer = Num1 - Num2; cout << " Answer is : " << Answer << endl; if (Q1Number = 2); Answer = Num1 * Num2; cout << " Answer is : " << Answer << endl; if (Q1Number = 2); Answer = Num1 / Num2; cout << " Answer is : " << Answer << endl; } #包括 使用名称空间std; int main() { 整数Q1,Num1,Num2,答案; cout,c++,C++,问题在于您的if语句。您需要使用=而不是=。使用=,您正在赋值,这就是问题所在 所以,改变 if (Q1Number = 1) 到 然后对所有if语句进行相同的编辑 当它是=时,运算符返回它指定的值,因此在您的情况下,指定的值是1和2,这将导致为true,因此满足if语句中的条件。您实际上是在指定而不是测试(运算符=与运算符==不同)您应该在if语句中将=转换为=。 此外,如果要进行除法,则应选中Num2!=0 #include <iostream> using namespace

问题在于您的
if
语句。您需要使用
=
而不是
=
。使用
=
,您正在赋值,这就是问题所在

所以,改变

if (Q1Number = 1)

然后对所有
if
语句进行相同的编辑


当它是
=
时,运算符返回它指定的值,因此在您的情况下,指定的值是1和2,这将导致
为true
,因此满足
if
语句中的条件。

您实际上是在指定而不是测试(运算符=与运算符==不同)您应该在
if
语句中将
=
转换为
=

此外,如果要进行除法,则应选中
Num2!=0

#include <iostream>
using namespace std;

int main()
{

int Q1Number, Num1, Num2;
int Answer = 0;
cout << "Welcome!" << endl;
cout << "" << endl;
cout << "Write the number to begin:" << endl;
cout << " 1- Addition " << endl;
cout << " 2- Subtraction " << endl;
cout << " 3- Multiplication " << endl;
cout << " 4- Division " << endl;
cin >> Q1Number;
cout << "Enter The first number";
cin >> Num1;
cout << "Enter The second number";
cin >> Num2;
if (Num2 == 0 && Q1Number == 4)
    {
        cout << "Num2 is 0. We don't divide by zero" << endl;
        return 0;
    }

if (Q1Number == 1)
{
    Answer = Num1 + Num2;

    cout << " Answer is : " << Answer << endl;
}

if (Q1Number == 2)
{
    Answer = Num1 - Num2;

    cout << " Answer is : " << Answer << endl;
}

if (Q1Number == 3)
{
    Answer = Num1 * Num2;

    cout << " Answer is : " << Answer << endl;  
}

if (Q1Number == 4)
{
    Answer = Num1 / Num2;

    cout << " Answer is : " << Answer << endl;
}
return 0;

if(a=b)
意味着将
b
赋值给
a
,然后测试结果是否为
true
。每当
b
非零时,情况就是这样。要测试是否相等,需要使用
=
运算符,
if(a==b)

最好是将
cout
#include <iostream>
using namespace std;

int main()
{

int Q1Number, Num1, Num2;
int Answer = 0;
cout << "Welcome!" << endl;
cout << "" << endl;
cout << "Write the number to begin:" << endl;
cout << " 1- Addition " << endl;
cout << " 2- Subtraction " << endl;
cout << " 3- Multiplication " << endl;
cout << " 4- Division " << endl;
cin >> Q1Number;
cout << "Enter The first number";
cin >> Num1;
cout << "Enter The second number";
cin >> Num2;
if (Num2 == 0 && Q1Number == 4)
    {
        cout << "Num2 is 0. We don't divide by zero" << endl;
        return 0;
    }

if (Q1Number == 1)
{
    Answer = Num1 + Num2;

    cout << " Answer is : " << Answer << endl;
}

if (Q1Number == 2)
{
    Answer = Num1 - Num2;

    cout << " Answer is : " << Answer << endl;
}

if (Q1Number == 3)
{
    Answer = Num1 * Num2;

    cout << " Answer is : " << Answer << endl;  
}

if (Q1Number == 4)
{
    Answer = Num1 / Num2;

    cout << " Answer is : " << Answer << endl;
}
return 0;
 #include <iostream>
    using namespace std;

    int main()
    {

    int Q1Number, Num1, Num2, Answer;
    cout << "Welcome!" << endl;
    cout << "" << endl;
    cout << "Write the number to begin:" << endl;
    cout << " 1- Addition " << endl;
    cout << " 2- Subtraction " << endl;
    cout << " 3- Multiplication " << endl;
    cout << " 4- Division " << endl;
    cin >> Q1Number;
    cout << "Enter The first number";
    cin >> Num1;
    cout << "Enter The second number";
    cin >> Num2;

    if (Num2 == 0 && Q1Number == 4)
    {
        cout << "Num2 is 0. We don't divide by zero" << endl;
        return 0;
    }
    switch(Q1Number)
    {
        case 1:
            Answer = Num1 + Num2;
            break;
        case 2:
            Answer = Num1 - Num2;
            break;
        case 3:
            Answer = Num1*Num2;
            break;
        case 4:
            Answer = Num1/Num2;
            break;
        default: 
            cout << " Wrong option selected " << endl
            break;
    }

    cout << " Answer is : " << Answer << endl

    return 0;
}