杭电ACM1.2.5 Balloon Comes!

Balloon Comes!

Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 3364 Accepted Submission(s): 1103
 

Problem Description

The contest starts now! How excited it is to see balloons floating around. You, one of the best programmers in HDU, can get a very beautiful balloon if only you have solved the very very very... easy problem.
Give you an operator (+,-,*, / --denoting addition, subtraction, multiplication, division respectively) and two positive integers, your task is to output the result. 
Is it very easy? 
Come on, guy! PLMM will send you a beautiful Balloon right now!
Good Luck!

 

Input

Input contains multiple test cases. The first line of the input is a single integer T (0<T<1000) which is the number of test cases. T test cases follow. Each test case contains a char C (+,-,*, /) and two integers A and B(0<A,B<10000).Of course, we all know that A and B are operands and C is an operator. 

 

Output

For each case, print the operation result. The result should be rounded to 2 decimal places If and only if it is not an integer.

 

Sample Input

4

+ 1 2

- 1 2

* 1 2

/ 1 2

 

Sample Output

3

-1

2

0.50

代码:

#include<iostream>
#include<iomanip>
using namespace std;

int max(int num1,int num2)
{
     return num1>=num2?num1:num2;
}

int min(int num1,int num2)
{
     return num1<=num2?num1:num2;
}

int main()
{
     int n,a,b;
     char x;
     float c;
     cin>>n;
     while(n--&&n<1000)
     {
          cin>>x>>a>>b;
          if(max(a,b)<10000&&min(a,b)>0)
          {
               switch(x)
               {
                    case '+':
                         cout<<a+b<<endl;
                         break;
                    case '-':
                         cout<<a-b<<endl;
                         break;
                    case '*':
                         cout<<a*b<<endl;
                         break;
                    case '/':
                         c=(float)a/(float)b;
                         if(c==a/b)
                              cout<<a/b<<endl;
                         else
                              cout<<setiosflags(ios::fixed)<<setprecision(2)<<c<<endl;
                         break;
                    default:
                         break;
               }                   
          }
     }
}
原文地址:https://www.cnblogs.com/cityflickr/p/3133056.html