学生管理系统c语言代码
时间: 2023-08-25 17:05:52 浏览: 39
以下是一个简单的学生管理系统的 C 语言代码,包含基本的添加、删除、查询、修改、显示等功能。
```
#include <stdio.h>
#include <string.h>
#define MAX 100
struct student{
int id;
char name[20];
int age;
char gender[5];
float score;
};
struct student stu[MAX];
int count = 0; // 学生数量
void add() { // 添加学生信息
if(count < MAX) {
printf("请输入学生信息:\n");
printf("学号:");
scanf("%d", &stu[count].id);
printf("姓名:");
scanf("%s", stu[count].name);
printf("年龄:");
scanf("%d", &stu[count].age);
printf("性别:");
scanf("%s", stu[count].gender);
printf("成绩:");
scanf("%f", &stu[count].score);
count++;
} else {
printf("学生信息已满,无法添加!\n");
}
}
void del() { // 删除学生信息
int id;
printf("请输入要删除的学生学号:");
scanf("%d", &id);
int find = 0;
for(int i = 0; i < count; i++) {
if(stu[i].id == id) {
find = 1;
for(int j = i; j < count - 1; j++) { // 后面的学生往前移
stu[j] = stu[j+1];
}
count--;
printf("删除成功!\n");
break;
}
}
if(!find) {
printf("没有找到该学生!\n");
}
}
void query() { // 查询学生信息
int id;
printf("请输入要查询的学生学号:");
scanf("%d", &id);
int find = 0;
for(int i = 0; i < count; i++) {
if(stu[i].id == id) {
find = 1;
printf("学号:%d 姓名:%s 年龄:%d 性别:%s 成绩:%.2f\n",
stu[i].id, stu[i].name, stu[i].age, stu[i].gender, stu[i].score);
break;
}
}
if(!find) {
printf("没有找到该学生!\n");
}
}
void modify() { // 修改学生信息
int id;
printf("请输入要修改的学生学号:");
scanf("%d", &id);
int find = 0;
for(int i = 0; i < count; i++) {
if(stu[i].id == id) {
find = 1;
printf("请输入学生信息:\n");
printf("学号:");
scanf("%d", &stu[i].id);
printf("姓名:");
scanf("%s", stu[i].name);
printf("年龄:");
scanf("%d", &stu[i].age);
printf("性别:");
scanf("%s", stu[i].gender);
printf("成绩:");
scanf("%f", &stu[i].score);
printf("修改成功!\n");
break;
}
}
if(!find) {
printf("没有找到该学生!\n");
}
}
void display() { // 显示所有学生信息
if(count == 0) {
printf("没有学生信息!\n");
} else {
printf("学号\t姓名\t年龄\t性别\t成绩\n");
for(int i = 0; i < count; i++) {
printf("%d\t%s\t%d\t%s\t%.2f\n",
stu[i].id, stu[i].name, stu[i].age, stu[i].gender, stu[i].score);
}
}
}
int main() {
int choice;
do {
printf("请选择操作:\n");
printf("1. 添加学生信息\n");
printf("2. 删除学生信息\n");
printf("3. 查询学生信息\n");
printf("4. 修改学生信息\n");
printf("5. 显示所有学生信息\n");
printf("0. 退出\n");
printf("请选择操作编号:");
scanf("%d", &choice);
switch(choice) {
case 1: add(); break;
case 2: del(); break;
case 3: query(); break;
case 4: modify(); break;
case 5: display(); break;
case 0: printf("欢迎下次使用!\n"); break;
default: printf("输入错误,请重新输入!\n"); break;
}
} while(choice != 0);
return 0;
}
```
这是一个简单的实现,如果需要更完善的功能和界面,可以根据需求进行扩展和修改。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.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)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://img-home.csdnimg.cn/images/20210720083646.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)