用c语言输入一个百分制成绩,输出相应的五级成绩。百分制成绩与五级制成绩之间的转换标准为:90分以上为A,80-89分为B,70-79分为C,60-69 分为D,60以下为E。 分别使用 if 结构和 switch 结构来实现程序 例1:输入:95输出:A 例2:输入:63输出:D
时间: 2024-09-15 12:14:47 浏览: 87
在 C 语言中,我们可以使用 if 和 switch 结构来实现这个成绩等级的转换。以下是两个版本的代码:
**使用 if 结构实现:**
```c
#include <stdio.h>
void convertToGrade(int score) {
if (score >= 90) {
printf("A\n");
} else if (score >= 80 && score <= 89) {
printf("B\n");
} else if (score >= 70 && score <= 79) {
printf("C\n");
} else if (score >= 60 && score <= 69) {
printf("D\n");
} else {
printf("E\n");
}
}
int main() {
int score;
printf("请输入百分制成绩: ");
scanf("%d", &score);
convertToGrade(score);
return 0;
}
```
**使用 switch 结构实现:**
```c
#include <stdio.h>
void convertToGrade(int score) {
switch (score / 10) { // 除以10是为了简化分类,因为只需要看十位数
case 9:
case 8:
printf("B");
break;
case 7:
printf("C");
break;
case 6:
printf("D");
break;
default:
printf("E");
}
if (score % 10 >= 6) { // 检查个位数,如果大于等于6则加'A'
printf("A");
} else if (score % 10 > 0) { // 否则,根据个位数确定等级
printf(score % 10 + '0');
}
printf("\n");
}
int main() {
int score;
printf("请输入百分制成绩: ");
scanf("%d", &score);
convertToGrade(score);
return 0;
}
```
这两个例子都实现了输入百分制分数,然后输出相应五级成绩的功能。请注意,`switch` 版本简化了代码结构,但它假定输入的成绩是个整数,并且没有明确的错误处理。
阅读全文