c++ - 我正在尝试以 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
解决方案
看来您的输入是 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>
lt
andgt
变量只是为了读取输入中的and<
字符>
。
推荐阅读
- c# - 具有子对象的实体更新是否需要初始查询
- php - 上传图片 PHP SQL
- git - 管理环境分支
- javascript - 如何使我的所有路由都具有 https 并强制 http 到 https?
- phaser-framework - 将 Phaser 3 游戏嵌入现有的秘银网站
- javascript - 检查数组中的空元素
- bots - 无法读取未定义 Discord.js 的属性“角色”
- javascript - 带有单个 sql 查询的 PHP 分页
- python - 自定义函数的偏导数
- amazon-web-services - 使用的命令为创建 S3 存储桶时出现 InvalidLocationConstraint 错误