Loading

计算机考研复试真题 计算表达式

题目描述

对于一个不存在括号的表达式进行计算

输入描述:

存在多种数据,每组数据一行,表达式不存在空格

输出描述:

输出结果
示例1

输入

6/2+3+3*4

输出

18




/**/
#include<iostream>
using namespace std;
int main() {
 double val[1010];
 while (~scanf("%lf", &val[0])) {
  char op;
  int ai = 0;
  double nex;
  while (~scanf("%c", &op) && op != '\n') {
   scanf("%lf", &nex);
   switch (op) {
   case '+':val[++ai] = nex; break;
   case '-':val[++ai] = -nex; break;
   case '*':val[ai] *= nex; break;
   case '/':val[ai] /= nex; break;
   }
  }
  double res=0;
  for (int i = 0; i <= ai; ++i)
       res += val[i];
  cout << res << endl;
 }
 return 0;
}

 

posted @ 2018-11-07 16:09  Parzulpan  阅读(347)  评论(0编辑  收藏  举报