统计学生成绩c语言switch
时间: 2023-12-07 18:37:25 浏览: 116
以下是使用C语言中的switch语句统计学生成绩的示例代码:
```c
#include <stdio.h>
int main() {
int score;
printf("请输入学生成绩:\n");
scanf("%d", &score);
switch(score / 10) {
case 10:
case 9:
printf("评分为A\n");
break;
case 8:
printf("评分为B\n");
break;
case 7:
printf("评分为C\n");
break;
case 6:
case 5:
printf("评分为D\n");
break;
default:
printf("输入的成绩不规范\n");
break;
}
return 0;
}
```
该代码中,我们首先使用`scanf`函数获取用户输入的学生成绩,然后使用`switch`语句根据学生成绩的分数段输出相应的评分。注意,我们使用了`score / 10`来将学生成绩转换为分数段,例如78分会被转换为7,80分会被转换为8。最后,我们使用`printf`函数输出评分。
相关问题
用switch语句统计学生成绩c语言
使用switch语句可以根据学生成绩的等级输出百分制分数段。具体实现方法如下:
1. 提示用户输入学生成绩。
2. 获取用户输入的成绩。
3. 根据成绩等级使用switch语句输出相应的百分制分数段。
以下是示例代码:
```
#include <stdio.h>
int main() {
int score;
printf("请输入学生成绩:\n");
scanf("%d", &score);
switch(score / 10) {
case 10:
printf("成绩等级为A,分数段为100分\n");
break;
case 9:
printf("成绩等级为B,分数段为80~99分\n");
break;
case 8:
printf("成绩等级为B,分数段为80~99分\n");
break;
case 7:
printf("成绩等级为C,分数段为60~79分\n");
break;
case 6:
printf("成绩等级为C,分数段为60~79分\n");
break;
default:
printf("成绩等级为D,分数段为60分以下\n");
break;
}
return 0;
}
```
学生成绩统计管理程序c语言
以下是一个使用C语言实现的学生成绩统计管理程序的示例代码:
```c
#include <stdio.h>
#include <stdlib.h>
#define MAX_STUDENTS 100
struct Student {
int id;
char name[50];
float score;
};
int main() {
struct Student students[MAX_STUDENTS];
int numStudents = 0;
int choice;
while (1) {
printf("学生成绩管理系统\n");
printf("1. 录入学生成绩\n");
printf("2. 统计平均分\n");
printf("3. 统计最高分\n");
printf("4. 统计最低分\n");
printf("5. 按学号查询成绩\n");
printf("6. 打印不合格优等生名单\n");
printf("0. 退出\n");
printf("请选择操作:");
scanf("%d", &choice);
switch (choice) {
case 1:
printf("请输入学生学号:");
scanf("%d", &students[numStudents].id);
printf("请输入学生姓名:");
scanf("%s", students[numStudents].name);
printf("请输入学生成绩:");
scanf("%f", &students[numStudents].score);
numStudents++;
break;
case 2:
// 统计平均分
float totalScore = 0;
for (int i = 0; i < numStudents; i++) {
totalScore += students[i].score;
}
float averageScore = totalScore / numStudents;
printf("平均分为:%.2f\n", averageScore);
break;
case 3:
// 统计最高分
float maxScore = students[0].score;
for (int i = 1; i < numStudents; i++) {
if (students[i].score > maxScore) {
maxScore = students[i].score;
}
}
printf("最高分为:%.2f\n", maxScore);
break;
case 4:
// 统计最低分
float minScore = students[0].score;
for (int i = 1; i < numStudents; i++) {
if (students[i].score < minScore) {
minScore = students[i].score;
}
}
printf("最低分为:%.2f\n", minScore);
break;
case 5:
// 按学号查询成绩
int searchId;
printf("请输入要查询的学生学号:");
scanf("%d", &searchId);
for (int i = 0; i < numStudents; i++) {
if (students[i].id == searchId) {
printf("学生姓名:%s\n", students[i].name);
printf("学生成绩:%.2f\n", students[i].score);
break;
}
}
break;
case 6:
// 打印不合格优等生名单
printf("不合格优等生名单:\n");
for (int i = 0; i < numStudents; i++) {
if (students[i].score < 60 || students[i].score >= 90) {
printf("学生学号:%d\n", students[i].id);
printf("学生姓名:%s\n", students[i].name);
printf("学生成绩:%.2f\n", students[i].score);
}
}
break;
case 0:
exit(0);
default:
printf("无效的选择,请重新输入。\n");
break;
}
}
return 0;
}
```
阅读全文