2004 ACM 成绩转换 两种方法

题目:http://acm.hdu.edu.cn/showproblem.php?pid=2004
中文题目,简单题。
题意:将分数转换成ABC制

查表法

#include <stdio.h>

int main()
{
    int score;
    char convert[] = "EEEEEEDCBAA";

    while(scanf("%d", &score) != EOF) {
          if(score < 0 || score > 100)
              printf("Score is error!\n");
          else
              printf("%c\n", convert[score/10]);
    }
}

用switch

#include <stdio.h>
int main ()
{
int socre;
while (scanf("%d",&socre)!=EOF)    
    {

        if(socre<0||socre>100) 
     { 
         printf("Score is error!\n"); 
     } 
        else
        {

     switch(socre/10){
     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;        
     default:printf("E\n");break; 
     } 
        }
    }       
}


if(socre<0||socre>100)
{
printf(“Score is error!\n”);
break;
}
会出错,到现在还不知道为什么。
注意:switch 每一个case 都要break;

posted @ 2018-08-10 10:19  CheeseIce  阅读(436)  评论(0编辑  收藏  举报