成绩转换
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 139257 Accepted Submission(s): 60697
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!
本题用if else 语句也可以,但是没有switch语句简洁明了。
#include <stdio.h>
#include <stdlib.h>
/*90~100为A;
80~89为B;
70~79为C;
60~69为D;
0~59为E;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
int main(int argc, char *argv[]) {
int r;
while(scanf("%d",&r)!=EOF)
{
if(r>100||r<0)
{
printf("Score is error!\n");
continue;
}
switch(r/10)
{
case 10:;
case 9:printf("A\n");break;
case 8:printf("B\n");break;
case 7:printf("C\n");break;
case 6:printf("D\n");break;
default:printf("E\n");break;
}
}
return 0;
}