c语言学籍管理程序的设计与实现
时间: 2023-08-13 15:04:28 浏览: 90
好的,那我来为您简单介绍一下 C 语言学籍管理程序的设计与实现。
首先,学籍管理程序主要包括学生信息的录入、查询、修改和删除等功能。在设计过程中我们需要定义一些结构体来存储学生信息,例如:
```
struct student {
char name[20];
int age;
char gender[10];
char id[20];
char major[30];
};
```
接下来,我们可以实现一些基本操作,比如录入学生信息:
```
void add_student(struct student stu[], int* count) {
printf("请输入学生姓名:");
scanf("%s", stu[*count].name);
printf("请输入学生年龄:");
scanf("%d", &stu[*count].age);
printf("请输入学生性别:");
scanf("%s", stu[*count].gender);
printf("请输入学生学号:");
scanf("%s", stu[*count].id);
printf("请输入学生专业:");
scanf("%s", stu[*count].major);
(*count)++;
}
```
查询学生信息:
```
void search_student(struct student stu[], int count, char id[]) {
int i;
for (i = 0; i < count; i++) {
if (strcmp(stu[i].id, id) == 0) {
printf("姓名:%s\n", stu[i].name);
printf("年龄:%d\n", stu[i].age);
printf("性别:%s\n", stu[i].gender);
printf("学号:%s\n", stu[i].id);
printf("专业:%s\n", stu[i].major);
return;
}
}
printf("未找到该学生信息!\n");
}
```
修改学生信息:
```
void modify_student(struct student stu[], int count, char id[]) {
int i;
for (i = 0; i < count; i++) {
if (strcmp(stu[i].id, id) == 0) {
printf("请输入修改后的学生姓名:");
scanf("%s", stu[i].name);
printf("请输入修改后的学生年龄:");
scanf("%d", &stu[i].age);
printf("请输入修改后的学生性别:");
scanf("%s", stu[i].gender);
printf("请输入修改后的学生专业:");
scanf("%s", stu[i].major);
printf("修改成功!\n");
return;
}
}
printf("未找到该学生信息!\n");
}
```
删除学生信息:
```
void delete_student(struct student stu[], int* count, char id[]) {
int i;
for (i = 0; i < *count; i++) {
if (strcmp(stu[i].id, id) == 0) {
int j;
for (j = i; j < *count - 1; j++) {
stu[j] = stu[j + 1];
}
(*count)--;
printf("删除成功!\n");
return;
}
}
printf("未找到该学生信息!\n");
}
```
最后,我们可以编写一个主函数来测试上面的函数,例如:
```
int main() {
struct student stu[100];
int count = 0;
int choice;
char id[20];
while (1) {
printf("1. 录入学生信息\n");
printf("2. 查询学生信息\n");
printf("3. 修改学生信息\n");
printf("4. 删除学生信息\n");
printf("5. 退出程序\n");
printf("请输入选项:");
scanf("%d", &choice);
switch (choice) {
case 1:
add_student(stu, &count);
break;
case 2:
printf("请输入要查询的学生学号:");
scanf("%s", id);
search_student(stu, count, id);
break;
case 3:
printf("请输入要修改的学生学号:");
scanf("%s", id);
modify_student(stu, count, id);
break;
case 4:
printf("请输入要删除的学生学号:");
scanf("%s", id);
delete_student(stu, &count, id);
break;
case 5:
return 0;
default:
printf("选项错误,请重新输入!\n");
}
}
return 0;
}
```
以上就是一个简单的 C 语言学籍管理程序的设计与实现。希望对您有所帮助!
阅读全文