第十四届蓝桥杯C++国赛编程题:简单算术题(无括号四则混合运算)
题目描述
给定一道没有括号的四则混合运算算术题(可能包含多余的空格),请编程计算出结果,运算规则如下:
- 既有乘、除法又有加、减法的,要先算乘除法,再算加减法
- 同级运算时,要从左往右按顺序计算
- 所有除法运算的结果都只保留整数部分(直接舍弃小数部分)
例如:当算术题为
2 + 3*4 - 10/6 + 1/2*4时,优先计算乘除法,有3*4=12,10/6=1,1/2*4=0;然后再计算加减法,2+3*4-10/6+1/2*4=2+12-1+0=13,故输出13。
输入描述
输入一个字符串,表示算术题,5≤字符串长度≤100000,字符串中只包含数字字符以及+、-、*、/运算符,不含括号,可能包含空格;
算式中的运算数范围:1≤运算数≤200。
输出描述
输出一个整数,表示算术题的计算结果。题目数据保证算式的每一步运算的结果都在-2x~2x之间。
样例输入
2+3*4-10/6+1/2*4
样例输出
13 本题为编程题,提交代码并运行通过测试点后判分。
正在加载题目数据…
子题
该题型需在试卷/作业中作答,单题练习暂不支持
答案解析