用c语言文件写入三个学生的成绩,通过功能函数调用把三个学生的成绩按升序排序
时间: 2023-10-24 09:08:45 浏览: 132
C语言学生成绩管理系统(信息可保存读取txt文件)
好的,下面是一个简单的 C 语言代码实现:
```c
#include <stdio.h>
struct student {
char name[20];
int score;
};
void sort(struct student arr[], int n) {
int i, j;
struct student temp;
for (i = 0; i < n - 1; i++) {
for (j = 0; j < n - i - 1; j++) {
if (arr[j].score > arr[j + 1].score) {
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
}
int main() {
struct student stu[3];
int i;
for (i = 0; i < 3; i++) {
printf("请输入第%d个学生的姓名和成绩:", i + 1);
scanf("%s %d", stu[i].name, &stu[i].score);
}
sort(stu, 3);
printf("按升序排列后的学生信息:\n");
for (i = 0; i < 3; i++) {
printf("%s %d\n", stu[i].name, stu[i].score);
}
return 0;
}
```
首先定义了一个 `student` 结构体,包含学生的姓名和成绩。然后定义了一个 `sort` 函数,用冒泡排序算法对传入的结构体数组按成绩进行升序排序。在 `main` 函数中,先通过循环输入三个学生的信息,然后调用 `sort` 函数对结构体数组进行排序。最后输出排序后的学生信息。
阅读全文