HDU-1170-Ballon Comes!(细节题)

    xiaoxiao2026-06-15  6

    题目链接:点击打开链接

    Balloon Comes!

    Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 26449    Accepted Submission(s): 10051 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<cstdio> #include<algorithm> #include<cstring> #include<iostream> #define LL long long using namespace std; char str; int n,m; int main() { int t; scanf("%d",&t); while(t--) { //scanf("%s %lf %lf",str,&n,&m); cin>>str>>n>>m; if(str=='+') printf("%d\n",n+m); if(str=='-') printf("%d\n",n-m); if(str=='*') printf("%d\n",n*m); if(str=='/') { // double 型不能用 % 取余 if(n%m==0) printf("%d\n",n/m); // 能整除就不输出浮点型,这里一直 WA else printf("%.2lf\n",(double)(n+0.0)/m); } } return 0; }

    转载请注明原文地址: https://ju.6miu.com/read-1310543.html
    最新回复(0)