用C语言实现一个学生信息管理系统,学生基本信息包括学号、姓名、三门课成绩以及个人平均成绩,有不超过70个学生的数据,要求能够建立学生基本信息(结构体数组)、按学号查询学生基本信息、计算学生个人平均成绩...
时间: 2023-09-11 13:11:55 浏览: 163
好的,这是一个简单的学生信息管理系统的C语言实现。
首先,定义一个学生信息的结构体,包括学号、姓名、三门课成绩和平均成绩:
```c
struct student {
char id[20];
char name[20];
float score1;
float score2;
float score3;
float average;
};
```
然后定义一个学生信息的数组,最多不超过70个学生:
```c
struct student stu[70];
```
接下来,定义一个函数用于输入学生信息并且计算平均成绩:
```c
void input(struct student *p) {
printf("请输入学号:");
scanf("%s", p->id);
printf("请输入姓名:");
scanf("%s", p->name);
printf("请输入三门课成绩:");
scanf("%f%f%f", &p->score1, &p->score2, &p->score3);
p->average = (p->score1 + p->score2 + p->score3) / 3;
}
```
然后,定义一个函数用于查询学生信息:
```c
void search(char *id) {
int i;
for (i = 0; i < n; i++) {
if (strcmp(stu[i].id, id) == 0) {
printf("学号:%s\n姓名:%s\n成绩1:%f\n成绩2:%f\n成绩3:%f\n平均成绩:%f\n",
stu[i].id, stu[i].name, stu[i].score1, stu[i].score2, stu[i].score3, stu[i].average);
return;
}
}
printf("未找到该学号对应的学生信息!\n");
}
```
最后,将以上函数综合起来,实现一个完整的学生信息管理系统:
```c
#include <stdio.h>
#include <string.h>
struct student {
char id[20];
char name[20];
float score1;
float score2;
float score3;
float average;
};
struct student stu[70]; // 学生信息数组
int n = 0; // 学生数量
void input(struct student *p);
void search(char *id);
int main() {
int choice;
char id[20];
while (1) {
printf("\n1. 输入学生信息\n");
printf("2. 按学号查询学生信息\n");
printf("3. 退出\n");
printf("请输入您的选择:");
scanf("%d", &choice);
switch (choice) {
case 1:
input(&stu[n]);
n++;
break;
case 2:
printf("请输入要查询的学号:");
scanf("%s", id);
search(id);
break;
case 3:
return 0;
default:
printf("输入有误,请重新输入!\n");
}
}
}
void input(struct student *p) {
printf("请输入学号:");
scanf("%s", p->id);
printf("请输入姓名:");
scanf("%s", p->name);
printf("请输入三门课成绩:");
scanf("%f%f%f", &p->score1, &p->score2, &p->score3);
p->average = (p->score1 + p->score2 + p->score3) / 3;
}
void search(char *id) {
int i;
for (i = 0; i < n; i++) {
if (strcmp(stu[i].id, id) == 0) {
printf("学号:%s\n姓名:%s\n成绩1:%f\n成绩2:%f\n成绩3:%f\n平均成绩:%f\n",
stu[i].id, stu[i].name, stu[i].score1, stu[i].score2, stu[i].score3, stu[i].average);
return;
}
}
printf("未找到该学号对应的学生信息!\n");
}
```
这个学生信息管理系统可以实现学生信息的录入和查询,您可以根据自己的需要进行扩展和修改。
阅读全文
相关推荐


















