nyoj题目98:成绩转换

来源:互联网 发布:淘宝铁十字勋章价格 编辑:程序博客网 时间:2024/04/24 06:01

成绩转换

时间限制:3000 ms  |           内存限制:65535 KB
难度:1
描述
输入一个百分制的成绩M,将其转换成对应的等级,具体转换规则如下:
90~100为A;
80~89为B;
70~79为C;
60~69为D;
0~59为E;
输入
第一行是一个整数N,表示测试数据的组数(N<10)
每组测试数据占一行,由一个整数M组成(0<=M<=100)。
输出
对于每组输入数据,输出一行。
样例输入
29780
样例输出
AB

 

#include <stdio.h>

int main ()
{
    int n, m;
    scanf ("%d", &n);
    while (n--)
    {
          scanf ("%d", &m);
          if (m == 100)
          {
          printf ("A\n");
          continue;
          }
          m = m / 10;
          switch (m)
          {
          case 9:printf ("A\n");  break;
          case 8:printf ("B\n");  break;
          case 7:printf ("C\n");  break;
          case 6:printf ("D\n");  break;
          case 5:
          case 4:
          case 3:
          case 2:
          case 1:
          case 0:printf ("E\n");break;
          default: printf ("input error\n");
          }
    }
    return 0;
}

 

 

优秀代码:
#include<iostream>
using namespace std;
int main()
{
int n,s;
cin>>n;
while(n--)
{
cin>>s;
switch(s/10)
{
case 10:
case 9:cout<<"A"<<endl;break;
case 8:cout<<"B"<<endl;break;
case 7:cout<<"C"<<endl;break;
case 6:cout<<"D"<<endl;break;
default:cout<<"E"<<endl;break;
}
}
}       

 

 

0 0
原创粉丝点击