c语言 学生管理系统
时间: 2023-05-26 10:02:39 浏览: 68
下面是一个简单的学生管理系统C语言的示例代码,包含添加学生信息、查询学生信息、修改学生信息和删除学生信息等基本功能:
```c
#include <stdio.h>
#include <string.h>
#define MAX_STUDENTS 100
// 学生结构体
typedef struct {
int id; // 学生ID
char name[20]; // 学生姓名
int age; // 学生年龄
} Student;
// 学生列表
Student students[MAX_STUDENTS];
// 当前学生数量
int numStudents = 0;
//添加学生信息
void addStudent() {
if (numStudents >= MAX_STUDENTS) { // 判断学生数量是否达到上限
printf("已达到最大学生数量,无法添加!\n");
return;
}
Student student;
printf("请输入学生ID:");
scanf("%d", &student.id);
printf("请输入学生姓名:");
scanf("%s", student.name);
printf("请输入学生年龄:");
scanf("%d", &student.age);
students[numStudents] = student; // 添加学生到学生列表
numStudents++; // 学生数量+1
printf("添加学生成功!\n");
}
// 查询学生信息
void searchStudent() {
int id;
printf("请输入要查询的学生ID:");
scanf("%d", &id);
for (int i = 0; i < numStudents; i++) {
if (students[i].id == id) {
printf("学生ID:%d,姓名:%s,年龄:%d\n", students[i].id, students[i].name, students[i].age);
return;
}
}
printf("未找到ID为%d的学生!\n", id);
}
// 修改学生信息
void modifyStudent() {
int id;
printf("请输入要修改的学生ID:");
scanf("%d", &id);
for (int i = 0; i < numStudents; i++) {
if (students[i].id == id) {
Student student;
printf("请输入学生姓名:");
scanf("%s", student.name);
printf("请输入学生年龄:");
scanf("%d", &student.age);
students[i] = student; // 修改学生信息
printf("修改学生信息成功!\n");
return;
}
}
printf("未找到ID为%d的学生!\n", id);
}
//删除学生信息
void deleteStudent() {
int id;
printf("请输入要删除的学生ID:");
scanf("%d", &id);
for (int i = 0; i < numStudents; i++) {
if (students[i].id == id) {
for (int j = i + 1; j < numStudents; j++) {
students[j - 1] = students[j]; // 删除学生
}
numStudents--; // 学生数量-1
printf("删除学生成功!\n");
return;
}
}
printf("未找到ID为%d的学生!\n", id);
}
// 显示学生列表
void showStudents() {
if (numStudents == 0) {
printf("暂无学生信息!\n");
return;
}
printf("学生列表:\n");
for (int i = 0; i < numStudents; i++) {
printf("学生ID:%d,姓名:%s,年龄:%d\n", students[i].id, students[i].name, students[i].age);
}
}
int main() {
int choice;
do {
printf("====================\n");
printf("学生管理系统\n");
printf("1. 添加学生信息\n");
printf("2. 查询学生信息\n");
printf("3. 修改学生信息\n");
printf("4. 删除学生信息\n");
printf("5. 显示学生列表\n");
printf("0. 退出系统\n");
printf("====================\n");
printf("请选择菜单编号:");
scanf("%d", &choice);
switch (choice) {
case 1:
addStudent();
break;
case 2:
searchStudent();
break;
case 3:
modifyStudent();
break;
case 4:
deleteStudent();
break;
case 5:
showStudents();
break;
case 0:
printf("退出系统,谢谢使用!\n");
break;
default:
printf("非法选择,请重新输入!\n");
}
} while (choice != 0);
return 0;
}
```