杭电ACM 1170解题报告

Balloon Comes!

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

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<stdio.h>
using namespace std;
int main()
{
   int n,a,b;
   char s;
   cin>>n;
   while(n--)
   {
      double sum;
      cin>>s>>a>>b;
      switch(s)
      {
        case '+':sum=a+b;
           break;
        case '-':sum=a-b;
           break;
        case '*':sum=a*b;
           break;
        case '/':sum=(float)a/(float)b;
           break;
        default:
           break;
    }
    if(sum!=(int) sum)
      printf("%.2lf\n",sum);
    else
       printf("%.0lf\n",sum);
   }
   return 0;
}

 

posted @ 2012-11-04 15:31  元明清  阅读(291)  评论(0编辑  收藏  举报