题目【2004】成绩转换
Problem Description
输入一个百分制的成绩t,将其转换成对应的等级,具体转换规则如下:
90~100为A;
80~89为B;
70~79为C;
60~69为D;
0~59为E;
Input
输入数据有多组,每组占一行,由一个整数组成。
Output
对于每组输入数据,输出一行。如果输入数据不在0~100范围内,请输出一行:“Score is error!”。
Sample Input
56
67
100
123
Sample Output
E
D
A
Score is error!
我的代码:
#include<stdio.h>
int main()
{
int t,grade;
while(scanf("%d",&t)!=EOF)
{
if(t>100||t<0)
printf("Score is error!\n");
grade=t/10;
switch(grade)
{
case 10:
printf("A\n");
break;
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:
printf("E\n");
break;
}
}
}
本题在一开始想的时候我就用了switch语句,没什么特殊的原因,就只是因为写题翻书的时候看见switch语句,想再复习一下,所以就用了。switch语句也不是很复杂,注意它的格式就行了。
同时还要switch转换的条件,这个c++课本上应该讲解的很清楚。