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!
/*
使用了map<char,int> mp;
mp[i] 访问
*/
/*
使用了map<char,int> mp;
mp[i] 访问
*/
#include <cstdio>
#include <map>
using namespace std;
int main(){
int score;
// char s[4] = {'A','B','C','D','E'};
map<int,char> mp;
mp[10] = mp[9] = 'A';
mp[8] = 'B';
mp[7] = 'C';
mp[6] = 'D';
mp[5]=mp[4]=mp[3]=mp[2]=mp[1]=mp[0] = 'E';
while(scanf("%d",&score) != EOF){
if(score > 100 || score < 0)
{
printf("Score is error!\n");
//break;
}
else
{
printf("%c\n",mp[score/10]);
}
}
return 0;
}