【表达式的值II】
题目描述
给出一个表达式,其中运算符仅包含+和-两种运算符,且没有括号。要求求出表达式的最终值。
数据保证要计算的数字的数量不超过100个,每个整数的数值和计算结果的数值都在int的范围内。
请注意:数字可能是1位数,也可能是多位数,如:1+1-1=1,12+23-11=24。
输入格式
仅一行,即为表达式。
输出格式
计算结果的数值。
样例输入/输出
输入数据 1
1+1-1
输出数据 1
1
解题
- 首先读入第一个数字,将其赋值给变量s,表示当前的计算结果。
- 然后进入一个循环,每次读入一个运算符和一个数字。
- 如果运算符是减号,将数字减去s。 如果运算符是加号,将数字加上s。
- 循环结束后输出s,即为最终的计算结果。
代码
#include<bits/stdc++.h>
using namespace std;
char a;
long long b,s=0,w;
int main()
{cin>>b;s=b;while(cin>>a){cin>>b;if(a=='-')s-=b;elses+=b;}cout<<s;return 0;
}