杭电 acm 2004(成绩转换)

来源:互联网 发布:windows使用VNC 编辑:程序博客网 时间:2024/06/05 09:08
题目:
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!

这题算是acm的入门题,就是通过一个选择结构,可以用if,也可以用switch。

代码如下:
第一种:使用if:
#include<stdio.h>int main(){int a;while (scanf("%d",&a)!=EOF){if(a<0|a>100){printf("Score is error!\n");}else if(a<60){printf("E\n");}else if(a<70){printf("D\n");}else if(a<80){printf("C\n");}else if(a<90){printf("B\n");}else{printf("A\n");}}return 0;}

第二种:使用switch:
#include<stdio.h> #include<math.h> int main() {     int n,i;     while(scanf("%d",&n)!=EOF)     {        if(n<0||n>100)        {            printf("Score is error!\n");        }        else        {            n/=10;            switch(n)           {                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; }


0 0
原创粉丝点击