九度oj 1101

来源:互联网 发布:淘宝假冒伪劣产品投诉 编辑:程序博客网 时间:2024/05/18 00:54
题目描述:

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

输入:

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

输出:

输出结果

样例输入:
6/2+3+3*4
样例输出:
18
来源:

2010年上海交通大学计算机研究生机试真题

#include "stdio.h"#define MAX 100int stack[MAX];int tail;int main(){  int a;  while(scanf("%d",&a)!=EOF){   tail=0;     stack[0]=0;   stack[++tail]=a;   char ch1;   while(scanf("%c",&ch1)!=EOF&&(ch1=='+'||ch1=='-'||ch1=='*'||ch1=='/')){                         scanf("%d",&a);            if(ch1=='+'){     stack[++tail]=a;    }else if(ch1=='-'){     stack[++tail]=-1*a;    }else if(ch1=='*'){     stack[tail]=stack[tail]*a;    }else if(ch1=='/'){     stack[tail]=stack[tail]/a;    }      }  for(int i=1;i<=tail;i++)  stack[0]+=stack[i];  printf("%d\n",stack[0]);  }}



0 0