学生信息管理系统c语言简单
时间: 2023-06-30 17:14:36 浏览: 37
学生信息管理系统是一个比较常见的小项目,实现起来也并不复杂。以下是一个简单的C语言实现:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
// 定义学生结构体
typedef struct student
{
char name[20]; // 姓名
int age; // 年龄
int number; // 学号
float score; // 成绩
} Student;
// 定义函数
void menu();
void add(Student *stu, int *num);
void del(Student *stu, int *num);
void modify(Student *stu, int *num);
void search(Student *stu, int *num);
void show(Student *stu, int *num);
int main()
{
Student stu[100]; // 最多可存储100个学生信息
int num = 0; // 存储学生信息的数量
int choice;
while (1) // 循环显示菜单
{
menu();
scanf("%d", &choice);
switch (choice)
{
case 1:
add(stu, &num);
break;
case 2:
del(stu, &num);
break;
case 3:
modify(stu, &num);
break;
case 4:
search(stu, &num);
break;
case 5:
show(stu, &num);
break;
case 6:
exit(0);
default:
printf("输入有误,请重新输入!\n");
break;
}
}
return 0;
}
// 显示菜单
void menu()
{
printf("\n\n");
printf("**********学生信息管理系统**********\n");
printf("1. 添加学生信息\n");
printf("2. 删除学生信息\n");
printf("3. 修改学生信息\n");
printf("4. 查询学生信息\n");
printf("5. 显示所有学生信息\n");
printf("6. 退出\n");
printf("**************************************\n");
printf("请选择您要执行的操作(1-6):");
}
// 添加学生信息
void add(Student *stu, int *num)
{
if (*num >= 100)
{
printf("学生信息已满,无法添加!\n");
return;
}
printf("请输入学生姓名:");
scanf("%s", stu[*num].name);
printf("请输入学生年龄:");
scanf("%d", &stu[*num].age);
printf("请输入学生学号:");
scanf("%d", &stu[*num].number);
printf("请输入学生成绩:");
scanf("%f", &stu[*num].score);
printf("添加学生信息成功!\n");
(*num)++;
}
// 删除学生信息
void del(Student *stu, int *num)
{
int number;
int i, j;
printf("请输入要删除的学生学号:");
scanf("%d", &number);
for (i = 0; i < *num; i++)
{
if (stu[i].number == number)
{
for (j = i; j < *num - 1; j++)
{
stu[j] = stu[j + 1]; // 将后一个学生信息覆盖当前学生信息
}
printf("删除学生信息成功!\n");
(*num)--;
return;
}
}
printf("未找到该学生信息!\n");
}
// 修改学生信息
void modify(Student *stu, int *num)
{
int number;
int i;
printf("请输入要修改的学生学号:");
scanf("%d", &number);
for (i = 0; i < *num; i++)
{
if (stu[i].number == number)
{
printf("请输入学生姓名(原姓名:%s):", stu[i].name);
scanf("%s", stu[i].name);
printf("请输入学生年龄(原年龄:%d):", stu[i].age);
scanf("%d", &stu[i].age);
printf("请输入学生学号(原学号:%d):", stu[i].number);
scanf("%d", &stu[i].number);
printf("请输入学生成绩(原成绩:%f):", stu[i].score);
scanf("%f", &stu[i].score);
printf("修改学生信息成功!\n");
return;
}
}
printf("未找到该学生信息!\n");
}
// 查询学生信息
void search(Student *stu, int *num)
{
int number;
int i;
printf("请输入要查询的学生学号:");
scanf("%d", &number);
for (i = 0; i < *num; i++)
{
if (stu[i].number == number)
{
printf("姓名:%s 年龄:%d 学号:%d 成绩:%f\n", stu[i].name, stu[i].age, stu[i].number, stu[i].score);
return;
}
}
printf("未找到该学生信息!\n");
}
// 显示所有学生信息
void show(Student *stu, int *num)
{
int i;
if (*num == 0)
{
printf("学生信息为空!\n");
return;
}
printf("姓名\t年龄\t学号\t成绩\n");
for (i = 0; i < *num; i++)
{
printf("%s\t%d\t%d\t%f\n", stu[i].name, stu[i].age, stu[i].number, stu[i].score);
}
}
```
以上代码实现了基本的学生信息管理功能,包括添加、删除、修改、查询和显示所有学生信息。在实际应用中,还可以加入数据存储和读取等功能,使其更加完善。
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![txt](https://img-home.csdnimg.cn/images/20210720083642.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)