题目描述

输入a,b,c三个整数(0≤a,b,c≤10000000),输入两个符号x,y,为(+,-,*,/)

输入输出格式

输入格式:

第一行a,b,c三个整数

第二行x,y两个符号

输出格式:

输出a?b?c,保留整数位 

输入输出样例

输入样例#1:                                                 输出样例#1:

1 2 3                                   -1
* -

输入样例#2:                                                 输出样例#2:

1 2 3                                   3
/ +

 代码

#include <bits/stdc++.h>
using namespace std ;
int main()
{

    long long int a,b,c;
    cin>>a>>b>>c;//输入
    char x,y;
    cin>>x>>y;
    int tmp=0;
    if(x=='+'||x=='-')//判断符号优先 
    {
    	switch(y)//如果是加号减号在前,先算后面
	    {
	        case '+':tmp=b+c;break;
	        case '-':tmp=b-c;break;
	        case '*':tmp=b*c;break;
	        case '/':tmp=b/c;break;
	    }
	    switch(x)//在算前面
	    {
	        case '+':cout<<a+tmp;break;
	        case '-':cout<<a-tmp;break;
	        case '*':cout<<a*tmp;break;
	        case '/':cout<<a/tmp;break;
	    }
	    return 0;
	}
    switch(x)//如果是乘除号在前,先算前面
    {
        case '+':tmp=a+b;break;
        case '-':tmp=a-b;break;
        case '*':tmp=a*b;break;
        case '/':tmp=a/b;break;
    }
    switch(y)//再算后面
    {
        case '+':cout<<tmp+c;break;
        case '-':cout<<tmp-c;break;
        case '*':cout<<tmp*c;break;
        case '/':cout<<tmp/c;break;
    }
}