C语言学生信息管理系统(加注释)
时间: 2023-06-18 22:08:35 浏览: 151
/*这是一个简单的C语言学生信息管理系统,主要功能包括添加学生信息、删除学生信息、修改学生信息和查询学生信息*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
/*定义结构体Student,存储学生信息*/
typedef struct {
char name[20]; //学生姓名
int age; //学生年龄
char gender[8]; //学生性别
int id; //学生学号
} Student;
/*声明函数*/
void addStudent();
void deleteStudent();
void modifyStudent();
void queryStudent();
/*定义全局变量students,存储学生信息*/
Student students[100];
int count = 0; //学生数量
int main() {
int choice;
while (1) {
printf("\n---------------------\n");
printf("学生信息管理系统\n");
printf("1. 添加学生信息\n");
printf("2. 删除学生信息\n");
printf("3. 修改学生信息\n");
printf("4. 查询学生信息\n");
printf("5. 退出系统\n");
printf("---------------------\n");
printf("请输入你的选择:");
scanf("%d", &choice);
switch (choice) {
case 1:
addStudent();
break;
case 2:
deleteStudent();
break;
case 3:
modifyStudent();
break;
case 4:
queryStudent();
break;
case 5:
exit(0);
default:
printf("输入错误,请重新输入!\n");
break;
}
}
return 0;
}
/*添加学生信息函数*/
void addStudent() {
Student student;
printf("请输入学生姓名:");
scanf("%s", student.name);
printf("请输入学生年龄:");
scanf("%d", &student.age);
printf("请输入学生性别:");
scanf("%s", student.gender);
printf("请输入学生学号:");
scanf("%d", &student.id);
students[count] = student;
count++;
printf("添加成功!\n");
}
/*删除学生信息函数*/
void deleteStudent() {
int id;
printf("请输入要删除的学生学号:");
scanf("%d", &id);
int index = -1; //用于存储要删除的学生在数组中的下标
for (int i = 0; i < count; i++) {
if (students[i].id == id) {
index = i;
break;
}
}
if (index == -1) { //未找到要删除的学生
printf("未找到要删除的学生!\n");
} else {
//将要删除的学生后面的学生向前移动,覆盖要删除的学生
for (int i = index; i < count - 1; i++) {
students[i] = students[i + 1];
}
count--;
printf("删除成功!\n");
}
}
/*修改学生信息函数*/
void modifyStudent() {
int id;
printf("请输入要修改的学生学号:");
scanf("%d", &id);
int index = -1; //用于存储要修改的学生在数组中的下标
for (int i = 0; i < count; i++) {
if (students[i].id == id) {
index = i;
break;
}
}
if (index == -1) { //未找到要修改的学生
printf("未找到要修改的学生!\n");
} else {
//修改学生信息
printf("请输入修改后的学生姓名:");
scanf("%s", students[index].name);
printf("请输入修改后的学生年龄:");
scanf("%d", &students[index].age);
printf("请输入修改后的学生性别:");
scanf("%s", students[index].gender);
printf("修改成功!\n");
}
}
/*查询学生信息函数*/
void queryStudent() {
int id;
printf("请输入要查询的学生学号:");
scanf("%d", &id);
int index = -1; //用于存储要查询的学生在数组中的下标
for (int i = 0; i < count; i++) {
if (students[i].id == id) {
index = i;
break;
}
}
if (index == -1) { //未找到要查询的学生
printf("未找到要查询的学生!\n");
} else {
//输出学生信息
printf("学生姓名:%s\n", students[index].name);
printf("学生年龄:%d\n", students[index].age);
printf("学生性别:%s\n", students[index].gender);
printf("学生学号:%d\n", students[index].id);
}
}
阅读全文