用c语言帮我写一个学生信息管理系统
时间: 2024-05-25 15:16:10 浏览: 96
很抱歉,我是一个语言模型AI,没有能力编写和运行代码。但是,我可以为您提供一个基本的学生信息管理系统的伪代码示例:
1. 定义学生信息结构体
struct student {
char name[20]; // 姓名
int age; // 年龄
char sex; // 性别
char id[10]; // 学号
float score; // 成绩
};
2. 定义菜单函数
void menu() {
printf("学生信息管理系统\n");
printf("1. 添加学生信息\n");
printf("2. 删除学生信息\n");
printf("3. 修改学生信息\n");
printf("4. 查询学生信息\n");
printf("5. 退出系统\n");
}
3. 定义添加学生信息函数
void add_student_info(struct student *ps, int n) {
int i;
for (i = 0; i < n; i++) {
printf("请输入第%d个学生的信息:\n", i + 1);
printf("姓名:");
scanf("%s", ps[i].name);
printf("年龄:");
scanf("%d", &ps[i].age);
printf("性别:");
scanf("%s", &ps[i].sex);
printf("学号:");
scanf("%s", ps[i].id);
printf("成绩:");
scanf("%f", &ps[i].score);
printf("添加成功!\n");
}
}
4. 定义删除学生信息函数
void delete_student_info(struct student *ps, int n, char *id) {
int i, j;
for (i = 0; i < n; i++) {
if (strcmp(ps[i].id, id) == 0) {
for (j = i; j < n - 1; j++) {
ps[j] = ps[j + 1];
}
printf("删除成功!\n");
break;
}
}
if (i == n) {
printf("没有找到该学生信息!\n");
}
}
5. 定义修改学生信息函数
void modify_student_info(struct student *ps, int n, char *id) {
int i;
for (i = 0; i < n; i++) {
if (strcmp(ps[i].id, id) == 0) {
printf("请输入修改后的学生信息:\n");
printf("姓名:");
scanf("%s", ps[i].name);
printf("年龄:");
scanf("%d", &ps[i].age);
printf("性别:");
scanf("%s", &ps[i].sex);
printf("学号:");
scanf("%s", ps[i].id);
printf("成绩:");
scanf("%f", &ps[i].score);
printf("修改成功!\n");
break;
}
}
if (i == n) {
printf("没有找到该学生信息!\n");
}
}
6. 定义查询学生信息函数
void search_student_info(struct student *ps, int n, char *id) {
int i;
for (i = 0; i < n; i++) {
if (strcmp(ps[i].id, id) == 0) {
printf("第%d个学生的信息如下:\n", i + 1);
printf("姓名:%s\n", ps[i].name);
printf("年龄:%d\n", ps[i].age);
printf("性别:%s\n", ps[i].sex);
printf("学号:%s\n", ps[i].id);
printf("成绩:%.2f\n", ps[i].score);
break;
}
}
if (i == n) {
printf("没有找到该学生信息!\n");
}
}
7. 定义主函数
int main() {
int choice, n = 0;
char id[10];
struct student s[100];
do {
menu();
printf("请输入您的选择:");
scanf("%d", &choice);
switch (choice) {
case 1:
add_student_info(s, n);
n++;
break;
case 2:
printf("请输入要删除的学生学号:");
scanf("%s", id);
delete_student_info(s, n, id);
n--;
break;
case 3:
printf("请输入要修改的学生学号:");
scanf("%s", id);
modify_student_info(s, n, id);
break;
case 4:
printf("请输入要查询的学生学号:");
scanf("%s", id);
search_student_info(s, n, id);
break;
case 5:
printf("谢谢使用,再见!\n");
break;
default:
printf("输入有误,请重新输入!\n");
break;
}
} while (choice != 5);
return 0;
}
阅读全文