YTU 2500: 二元表达式计算

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;
}

原文地址:https://www.cnblogs.com/im0qianqian/p/5989500.html