1、有100个学生,每个学生有学号、姓名和平均成绩,请编写程序,要求具备以下功能: (1)定义结构体类型,定义一个函数fin(),该函数的功能是输入这100个学生的信息并在主函数中调用该函数; (2)定义一个函数fout(),函数的功能是输出学生的所有信息并在主函数中调用该函数; (3)定义一个函数faverage(),该函数的功能是统计平均分在80分以上(包括80分)的学生的人数并在主函数中输出满足条件的人的个数; (4)通过键盘输入一个学生的名字,定义一个函数fsearch(),函数的功能是查找该生在100个学生信息中是否存在,若存在,输出该生的全部信息,并在主函数中调用该函数; (5)定义一个函数fsort(),该函数的功能是对这100个学生的信息按平均成绩从高到低排序,在主函数中调用该函数,输出排序后的结果;C语言实现
时间: 2023-02-06 16:21:31 浏览: 268
学生成绩管理系统.doc
5星 · 资源好评率100%
以下是一种使用 C 语言实现上述功能的方法:
定义结构体类型:
```
struct Student {
int id;
char name[20];
float average;
};
```
定义函数 fin:
```
void fin(struct Student students[]) {
for (int i = 0; i < 100; i++) {
printf("请输入第 %d 个学生的学号、姓名和平均成绩:\n", i + 1);
scanf("%d%s%f", &students[i].id, students[i].name, &students[i].average);
}
}
```
定义函数 fout:
```
void fout(struct Student students[]) {
for (int i = 0; i < 100; i++) {
printf("学号:%d\t姓名:%s\t平均成绩:%.2f\n", students[i].id, students[i].name, students[i].average);
}
}
```
定义函数 faverage:
```
void faverage(struct Student students[]) {
int count = 0;
for (int i = 0; i < 100; i++) {
if (students[i].average >= 80) {
count++;
}
}
printf("平均分在80分以上(包括80分)的学生有 %d 个。\n", count);
}
```
定义函数 fsearch:
```
void fsearch(struct Student students[]) {
char name[20];
printf("请输入要查找的学生的姓名:\n");
scanf("%s", name);
for (int i = 0; i < 100; i++) {
if (strcmp(students[i].name, name) == 0) {
printf("学号:%d\t姓名:%s\t平均成绩:%.2f\n", students[i].id, students[i].name, students[i].average);
return;
}
}
printf("未找到该学生。\n");
}
```
定义函数 fsort:
```
void fsort(struct Student students[]) {
for (int i = 0; i < 100 - 1; i++) {
for (int j = 0; j < 100 - 1 - i; j++) {
if (stud
阅读全文