我正在尝试以1 + 2的形式输入一个简单的数学表达式

时间:2019-02-09 21:10:51

标签: c++ math operators

我需要设置一个简单的计算器来输入并提供输出。我知道一旦保存了变量,就可以使用条件使它起作用,但是我无法按照需要的方式保存变量。

#include <iostream>
using   namespace std;

int main(){
    int n1;
    int n2;
    char opr;
    cout<<"Enter an expression to evaluate: ";
    cin>> n1>> opr >>n2;  //my input is <1 + 2>

    cout<<n1<<endl;
    cout<<opr<<endl;
    cout<<n2<<endl;

    return 0;
}

我希望输出为: 1个 + 2

但是它显示为: 1个 0 6422368

1 个答案:

答案 0 :(得分:0)

您的输入似乎是这个<1 + 2>。您已经编写了可以在输入为1 + 2的情况下使用的代码,但并非如此,因此您需要更改代码。

这是一种可以使用给定输入的方法。

int n1, n2;
char opr, lt, gt;
cout<<"Enter an expression to evaluate: ";
cin >> lt >> n1 >> opr >> n2 >> gt;  //my input is <1 + 2>

ltgt变量只是在输入中读取<>字符的地方。