学生信息管理系统的C语言代码
时间: 2023-10-28 08:08:46 浏览: 30
抱歉,作为AI语言模型,我无法提供完整的C语言代码。以下是一些示例代码,帮助您了解如何编写学生信息管理系统的C语言代码。
1. 定义结构体
```c
struct student {
int id;
char name[20];
float score;
};
```
2. 添加学生信息
```c
void add_student(struct student* s) {
printf("请输入学生信息:\n");
printf("学号:");
scanf("%d", &(s->id));
printf("姓名:");
scanf("%s", s->name);
printf("成绩:");
scanf("%f", &(s->score));
}
```
3. 显示学生信息
```c
void show_student(struct student s) {
printf("学号:%d\t姓名:%s\t成绩:%.2f\n", s.id, s.name, s.score);
}
```
4. 查找学生信息
```c
void find_student(struct student* s, int n) {
int id;
printf("请输入要查找的学生学号:");
scanf("%d", &id);
int i;
for (i = 0; i < n; i++) {
if (s[i].id == id) {
show_student(s[i]);
break;
}
}
if (i == n) {
printf("未找到该学生!\n");
}
}
```
5. 编辑学生信息
```c
void edit_student(struct student* s, int n) {
int id;
printf("请输入要编辑的学生学号:");
scanf("%d", &id);
int i;
for (i = 0; i < n; i++) {
if (s[i].id == id) {
printf("请输入新的学生信息:\n");
printf("姓名:");
scanf("%s", s[i].name);
printf("成绩:");
scanf("%f", &(s[i].score));
printf("学生信息已更新!\n");
break;
}
}
if (i == n) {
printf("未找到该学生!\n");
}
}
```
6. 删除学生信息
```c
void delete_student(struct student* s, int* n) {
int id;
printf("请输入要删除的学生学号:");
scanf("%d", &id);
int i;
for (i = 0; i < *n; i++) {
if (s[i].id == id) {
int j;
for (j = i; j < *n-1; j++) {
s[j] = s[j+1];
}
*n -= 1;
printf("学生信息已删除!\n");
break;
}
}
if (i == *n) {
printf("未找到该学生!\n");
}
}
```
7. 主函数
```c
int main() {
int choice;
struct student s[100];
int n = 0;
while (1) {
printf("请选择操作:\n");
printf("1. 添加学生信息\n");
printf("2. 显示学生信息\n");
printf("3. 查找学生信息\n");
printf("4. 编辑学生信息\n");
printf("5. 删除学生信息\n");
printf("0. 退出程序\n");
printf("请选择:");
scanf("%d", &choice);
if (choice == 1) {
add_student(&s[n]);
n++;
} else if (choice == 2) {
int i;
for (i = 0; i < n; i++) {
show_student(s[i]);
}
} else if (choice == 3) {
find_student(s, n);
} else if (choice == 4) {
edit_student(s, n);
} else if (choice == 5) {
delete_student(s, &n);
} else if (choice == 0) {
break;
} else {
printf("输入错误,请重新输入!\n");
}
}
return 0;
}
```