用C语言实现一个学生信息管理系统,学生基本信息包括学号、姓名、三门课成绩以及个人平均成绩,有不超过70个学生的数据,要求能够建立学生基本信息(结构体数组)、按学号查询学生基本信息、计算学生个人平均成绩、按学生某一门课程或平均成绩高低进行排序、修改某个学生某门课程成绩、输出所有学生信息功能。
时间: 2023-02-13 20:42:17 浏览: 36
可以先建立一个学生信息结构体,包括学号、姓名、三门课成绩以及个人平均成绩。
struct Student{
char id[10]; // 学号
char name[20]; // 姓名
float grade[3]; // 三门课成绩
float average; // 个人平均成绩
};
然后可以建立一个学生信息数组,最多包含 70 个学生的信息。
struct Student students[70];
下面是实现各种功能的示例代码:
// 建立学生基本信息
void createStudent(){
// 输入学生信息
printf("请输入学生学号:");
scanf("%s", students[num].id);
printf("请输入学生姓名:");
scanf("%s", students[num].name);
printf("请输入学生三门课成绩:");
scanf("%f%f%f", &students[num].grade[0], &students[num].grade[1], &students[num].grade[2]);
num++; // 学生数加 1
}
// 按学号查询学生基本信息
void queryStudent(){
char id[10];
printf("请输入学号:");
scanf("%s", id);
for(int i=0; i<num; i++){
if(strcmp(id, students[i].id) == 0){
printf("学号:%s\n", students[i].id);
printf("姓名:%s\n", students[i].name);
printf("成绩1:%.2f\n", students[i].grade[0]);
printf("成绩2:%.2f\n", students[i].grade[1]);
printf("成绩3:%.2f\n", students[i].grade[2]);
printf("平均成绩:%.2f\n", students[i].average);
return;
}
}
printf("没有找到该学生信息!\n");
}
// 计算学生个人平均
阅读全文