首页 > 解决方案 > 我正在尝试以 1 + 2 的形式输入一个简单的数学表达式

问题描述

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

#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

标签: c++mathoperators

解决方案


看来您的输入是 this <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>

ltandgt变量只是为了读取输入中的and<字符>


推荐阅读