20.将输入的百分制成绩(0~100)转换为对应的等级(0~59:不及格 60~69:及格 70~79:良好 80~100:优秀),否则输出”输入错误“ (用if和switch两种方法分别编程)
时间: 2024-09-06 20:08:06 浏览: 221
如何将百分制转换成不同的等级分?-excel高级教程
以下是使用`if`和`switch`两种方法实现将百分制成绩转换为等级的C语言代码示例:
使用`if`语句的版本:
```c
#include <stdio.h>
int main() {
int score;
printf("请输入百分制成绩: ");
scanf("%d", &score);
if (score >= 0 && score <= 100) {
if (score < 60) {
printf("不及格\n");
} else if (score < 70) {
printf("及格\n");
} else if (score < 80) {
printf("良好\n");
} else {
printf("优秀\n");
}
} else {
printf("输入错误\n");
}
return 0;
}
```
使用`switch`语句的版本:
```c
#include <stdio.h>
int main() {
int score;
printf("请输入百分制成绩: ");
scanf("%d", &score);
if (score >= 0 && score <= 100) {
switch (score / 10) {
case 10:
case 9:
printf("优秀\n");
break;
case 8:
printf("良好\n");
break;
case 7:
printf("良好\n");
break;
default:
printf("及格\n");
break;
}
} else {
printf("输入错误\n");
}
return 0;
}
```
注意:由于`switch`语句不支持范围判断,所以在使用`switch`语句时,我们需要将分数除以10,然后根据得到的范围来判断等级。
阅读全文