c语言学生成绩管理按学生姓名排序
时间: 2023-10-30 15:05:01 浏览: 48
以下是一个简单的C语言程序,可以按学生姓名对学生成绩进行排序:
```c
#include <stdio.h>
#include <string.h>
struct student {
char name[20];
int score;
};
int main() {
int n, i, j;
struct student s[100], temp;
printf("请输入学生数:");
scanf("%d", &n);
// 输入学生信息
for (i = 0; i < n; i++) {
printf("请输入学生姓名:");
scanf("%s", s[i].name);
printf("请输入学生成绩:");
scanf("%d", &s[i].score);
}
// 按姓名排序
for (i = 0; i < n - 1; i++) {
for (j = i + 1; j < n; j++) {
if (strcmp(s[i].name, s[j].name) > 0) {
temp = s[i];
s[i] = s[j];
s[j] = temp;
}
}
}
// 输出排序后的学生成绩
printf("按姓名排序后的学生成绩:\n");
for (i = 0; i < n; i++) {
printf("%s\t%d\n", s[i].name, s[i].score);
}
return 0;
}
```
这个程序定义了一个 `struct student` 结构体来存储学生姓名和成绩,然后通过循环输入学生信息,再使用双重循环按姓名进行排序,最后输出排序后的学生成绩。