现在的位置: 首页 > 综合 > 正文

ZOJ 3782 Ternary Calculation

2014年09月05日 ⁄ 综合 ⁄ 共 750字 ⁄ 字号 评论关闭

ZOJ   3782   Ternary Calculation

题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3782

2014 第十一届浙江省赛 G

题目大意:格式给出算式,计算结果并输出。

题目分析:优先级要注意,另外scanf("");很好用。

code:

#include<stdio.h>
int main()
{
    int i,j,t,a,b,c,ans;
    char o1,o2;
    scanf("%d",&t);
    while(t--)
    {
        scanf("%d%*c%c%*c%d%*c%c%*c%d",&a,&o1,&b,&o2,&c);
        if((o1=='+'||o1=='-')&&(o2=='*'||o2=='/'||o2=='%'))
        {
            switch(o2)
            {
                case'*':ans=b*c;break;
                case'/':ans=b/c;break;
                case'%':ans=b%c;
            }
            switch(o1)
            {
                case'+':ans+=a;break;
                case'-':ans=a-ans;
            }
        }
        else
        {
            switch(o1)
            {
                case'+':ans=a+b;break;
                case'-':ans=a-b;break;
                case'*':ans=a*b;break;
                case'/':ans=a/b;break;
                case'%':ans=a%b;
            }
            switch(o2)
            {
                case'+':ans+=c;break;
                case'-':ans-=c;break;
                case'*':ans*=c;break;
                case'/':ans/=c;break;
                case'%':ans%=c;
            }
        }
        printf("%d\n",ans);
    }
    return 0;
}

PS:居然1wrong!?失败……&

抱歉!评论已关闭.