c语言中多路分支语句实现成绩五档划分
时间: 2024-03-08 11:48:39 浏览: 24
可以使用 switch-case 语句来实现成绩五档划分,示例代码如下:
```c
#include <stdio.h>
int main() {
int score; // 定义成绩变量
printf("请输入成绩:");
scanf("%d", &score); // 输入成绩
switch (score / 10) { // 根据成绩的十位数进行判断
case 10:
case 9:
printf("优秀\n");
break;
case 8:
printf("良好\n");
break;
case 7:
printf("中等\n");
break;
case 6:
printf("及格\n");
break;
default:
printf("不及格\n");
break;
}
return 0;
}
```
这里使用了除法运算符来获取成绩的十位数,然后根据不同的十位数进行判断,输出不同的成绩等级。注意,每个 case 后面要加上 break 语句,否则会继续执行后面的 case 语句。
相关问题
c语言中用else if语句实现成绩五档划分
好的,针对你的问题,我可以给出以下的代码示例:
```
#include <stdio.h>
int main() {
int score;
printf("请输入成绩:");
scanf("%d", &score);
if (score >= 90) {
printf("优秀\n");
} else if (score >= 80) {
printf("良好\n");
} else if (score >= 70) {
printf("中等\n");
} else if (score >= 60) {
printf("及格\n");
} else {
printf("不及格\n");
}
return 0;
}
```
以上代码中,根据用户输入的成绩score,根据成绩的高低,依次进入不同的条件分支。如果符合某个条件分支,就输出相应的成绩等级。如果不符合任何一个条件分支,则输出“不及格”。
C语言中假设考试的分数只能为整数,请用两种多路分支语句实现成绩的五档划分(90~100,优秀;80~89,中等;70~79,良好,60~69,及格;小于60,不及格)
第一种多路分支语句实现:
```c
int score; // 假设分数为整数
// 输入分数
printf("请输入分数:");
scanf("%d", &score);
// 判断分数所属的档次
if (score >= 90 && score <= 100) {
printf("优秀\n");
} else if (score >= 80 && score <= 89) {
printf("中等\n");
} else if (score >= 70 && score <= 79) {
printf("良好\n");
} else if (score >= 60 && score <= 69) {
printf("及格\n");
} else {
printf("不及格\n");
}
```
第二种多路分支语句实现:
```c
int score; // 假设分数为整数
// 输入分数
printf("请输入分数:");
scanf("%d", &score);
// 判断分数所属的档次
switch (score / 10) {
case 10:
case 9:
printf("优秀\n");
break;
case 8:
printf("中等\n");
break;
case 7:
printf("良好\n");
break;
case 6:
printf("及格\n");
break;
default:
printf("不及格\n");
break;
}
```
以上两种方式均可实现成绩的五档划分。第一种方式使用 if-else 语句实现,直接判断分数所属的范围。第二种方式使用 switch-case 语句实现,将分数除以 10 得到十位数,根据十位数来判断分数所属的档次。