分享好友 数智知识首页 数智知识分类 切换频道

学生信息管理系统:C语言实现高效管理功能

学生信息管理系统是一个用于管理学生信息的系统,它需要实现以下功能。...
2025-07-11 20:1090

学生信息管理系统是一个用于管理学生信息的系统,它需要实现以下功能:

1. 添加学生信息

2. 修改学生信息

3. 删除学生信息

4. 查询学生信息

5. 显示所有学生信息

6. 分页显示学生信息

7. 排序学生信息

8. 打印学生信息

9. 退出系统

为了实现这些功能,我们可以使用C语言编写一个学生信息管理系统。以下是一个简单的实现:

```c

#include

#include

#include

typedef struct Student {

int id;

char name[20];

float score;

} Student;

void add_student(Student *students, int *count);

void modify_student(Student *students, int index, int id, char *name, float score);

void delete_student(Student *students, int index);

void query_student(Student *students, int count, int start, int end);

void display_students(Student *students, int count);

void sort_students(Student *students, int count);

void print_students(Student *students, int count);

void exit_system(void);

int main() {

Student students[100];

int count = 0;

int choice;

while (1) {

printf("1. 添加学生信息

");

printf("2. 修改学生信息

");

printf("3. 删除学生信息

");

printf("4. 查询学生信息

");

printf("5. 显示所有学生信息

");

printf("6. 排序学生信息

");

printf("7. 打印学生信息

");

printf("8. 退出系统

");

printf("请输入您的选择:");

scanf("%d", &choice);

switch (choice) {

case 1:

add_student(students, &count);

break;

case 2:

    modify_student(students, count
  • 1, 1, "张三", 89.5);

break;

case 3:

    delete_student(students, count
  • 1);

break;

case 4:

query_student(students, count);

break;

case 5:

display_students(students, count);

break;

case 6:

sort_students(students, count);

break;

case 7:

print_students(students, count);

break;

case 8:

exit_system();

default:

printf("无效的选择,请重新输入!

");

学生信息管理系统:C语言实现高效管理功能

}

}

return 0;

}

void add_student(Student *students, int *count) {

int id;

char name[20];

float score;

printf("请输入学生ID:");

scanf("%d", &id);

printf("请输入学生姓名:");

scanf("%s", name);

printf("请输入学生成绩:");

scanf("%f", &score);

students[*count].id = id;

students[*count].name[0] = '';

students[*count].score = score;

(*count)++;

}

void modify_student(Student *students, int index, int id, char *name, float score) {

if (index >= 0 && index < *count) {

students[index].id = id;

strcpy(students[index].name, name);

students[index].score = score;

} else {

printf("无效的学生ID或索引,请重新输入!

");

}

}

void delete_student(Student *students, int index) {

if (index >= 0 && index < *count) {

*count--;

    memmove(&students[index], &students[index + 1], sizeof(Student) * (*count
  • index - 1));

} else {

printf("无效的学生ID,请重新输入!

");

}

}

void query_student(Student *students, int count, int start, int end) {

for (int i = start; i <= end; i++) {

printf("学生ID:%d,姓名:%s,成绩:%.2f

", students[i].id, students[i].name, students[i].score);

}

}

void display_students(Student *students, int count) {

for (int i = 0; i < count; i++) {

printf("学生ID:%d,姓名:%s,成绩:%.2f

", students[i].id, students[i].name, students[i].score);

}

}

void sort_students(Student *students, int count) {

    for (int i = 0; i < count
  • 1; i++) {

for (int j = i + 1; j < count; j++) {

if (students[i].score > students[j].score) {

Student temp = students[i];

students[i] = students[j];

students[j] = temp;

}

}

}

}

void print_students(Student *students, int count) {

for (int i = 0; i < count; i++) {

printf("学生ID:%d,姓名:%s,成绩:%.2f

", students[i].id, students[i].name, students[i].score);

}

}

void exit_system() {

printf("退出系统...");

getchar(); // 等待用户按下任意键退出程序

exit(0);

}

```

这个实现使用了数组来存储学生信息,每个学生的信息包括ID、姓名和成绩。通过调用不同的函数来实现添加、修改、删除、查询、显示和排序学生信息的功能。

举报
收藏 0
推荐产品更多
蓝凌MK

办公自动化130条点评

4.5星

简道云

低代码开发平台0条点评

4.5星

帆软FineBI

商业智能软件0条点评

4.5星

纷享销客CRM

客户管理系统0条点评

4.5星

推荐知识更多