2500: 二元表达式计算
时间限制: 1 Sec 内存限制: 128 MB提交: 38 解决: 23
题目描述
根据输入的含有两个二元运算的表达式,编程计算并输出表达式的值。如输入: 2+9*2,输出20
输入
输入表达式(运算数为整数)
输出
计算结果(保留整数)
样例输入
1*4-5
样例输出
-1
迷失在幽谷中的鸟儿,独自飞翔在这偌大的天地间,却不知自己该飞往何方……
#include <stdio.h>
#include <stdlib.h>
int yunsuan(int a,char c,int b)
{
if(c=='+')return a+b;
else if(c=='-')return a-b;
else if(c=='*')return a*b;
else if(c=='/')return a/b;
return 0;
}
int main()
{
char c,e;
int s=0,a,b,d;
scanf("%d%c%d%c%d",&a,&c,&b,&e,&d);
if(c==42||c==47)
{
s=yunsuan(a,c,b);
s=yunsuan(s,e,d);
}
else
{
s=yunsuan(b,e,d);
s=yunsuan(a,c,s);
}
printf("%d",s);
return 0;
}