题目:
第二种:使用switch:
Problem Description
输入一个百分制的成绩t,将其转换成对应的等级,具体转换规则如下:
90~100为A;
80~89为B;
70~79为C;
60~69为D;
0~59为E;
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:
这题算是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;
}
该博客介绍了一道ACM入门题目,要求将百分制成绩转换为对应的字母等级。博主提供了两种C语言解决方案,一种使用if语句,另一种使用switch语句。示例输入和输出展示了不同分数范围对应的成绩表示,并指出输入不在0~100范围时的错误提示。
264

被折叠的 条评论
为什么被折叠?



