• 【ACM】hdu_1170_Balloon Comes!_201307261946


    Balloon Comes!
    Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
    Total Submission(s): 16847    Accepted Submission(s): 6150


    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 <stdio.h>
    int main()
    {int n;
     scanf("%d",&n);
     getchar();
     while(n--)
     {int a,b;
      char c;
      scanf("%c%d%d",&c,&a,&b);
      getchar();
      if(c=='/')
      {if(a/b==(double)a/b)
      printf("%d ",a/b);
      else
      printf("%.2lf ",(double)a/b);
      }
      if(c=='+')
      printf("%d ",a+b);
      if(c=='-')
      printf("%d ",a-b);
         if(c=='*')
      printf("%d ",a*b);
     }
     return 0;
    }

    第一次少用了第二个getchar();而且没有考虑a/b结果为整数应输出整数
    注意:要用两次getchar();   当且仅当a/b结果为小数时,结果保留两位小数,结果不为小数时,输出整数

    读入字符要注意两点。第一:注意空格,例如输入a b那么要写成scanf("%c %c",&x,&y),这样可以把空格中间的空格读掉,因为空格也是一个字符,如果不这样做的话字符b就读不到;第二,读完字符后要加一个getchar(),因为scanf是不能把回车换行符读取的,故当读入第二组数据的时候读的是上一组数据留下来的换行符这个字符。
     
  • 相关阅读:
    每天学习Linux——日志管理
    每天学习Linux——日志查看
    每天学习Linux命令——history
    .NET中property与attribute的区别,以及反射机制
    java内部类
    java的多态
    子类构造方法
    单例模式
    重载,重写
    数据库调优的方法有那些
  • 原文地址:https://www.cnblogs.com/xl1027515989/p/3218013.html
Copyright © 2020-2023  润新知