学生成绩管理系统源代码c语言
时间: 2023-09-25 12:16:14 浏览: 54
C语言学生成绩管理系统源代码
很抱歉,我无法提供完整的学生成绩管理系统的源代码。但是,我可以给你一些基本的思路和代码片段来帮助你开始编写。
首先,你需要定义一个结构体来存储学生信息,包括学号、姓名、成绩等。例如:
```c
struct Student {
char id[10];
char name[20];
float score;
};
```
然后,你需要定义一个存储学生信息的数组,并编写相应的函数来添加、删除、修改和查询学生信息。例如:
```c
#define MAX_NUM 100 // 最大学生数
struct Student students[MAX_NUM]; // 存储学生信息的数组
int num_students = 0; // 当前学生数
// 添加学生信息
void add_student() {
if (num_students >= MAX_NUM) {
printf("已达到最大学生数!\n");
return;
}
printf("请输入学号、姓名、成绩:\n");
scanf("%s %s %f", students[num_students].id, students[num_students].name, &students[num_students].score);
num_students++;
printf("添加成功!\n");
}
// 删除学生信息
void delete_student() {
char id[10];
printf("请输入要删除的学生学号:\n");
scanf("%s", id);
int index = -1;
for (int i = 0; i < num_students; i++) {
if (strcmp(students[i].id, id) == 0) {
index = i;
break;
}
}
if (index == -1) {
printf("未找到该学生!\n");
return;
}
for (int i = index; i < num_students - 1; i++) {
students[i] = students[i + 1];
}
num_students--;
printf("删除成功!\n");
}
// 修改学生信息
void modify_student() {
char id[10];
printf("请输入要修改的学生学号:\n");
scanf("%s", id);
int index = -1;
for (int i = 0; i < num_students; i++) {
if (strcmp(students[i].id, id) == 0) {
index = i;
break;
}
}
if (index == -1) {
printf("未找到该学生!\n");
return;
}
printf("请输入新的学号、姓名、成绩:\n");
scanf("%s %s %f", students[index].id, students[index].name, &students[index].score);
printf("修改成功!\n");
}
// 查询学生信息
void query_student() {
char id[10];
printf("请输入要查询的学生学号:\n");
scanf("%s", id);
int index = -1;
for (int i = 0; i < num_students; i++) {
if (strcmp(students[i].id, id) == 0) {
index = i;
break;
}
}
if (index == -1) {
printf("未找到该学生!\n");
return;
}
printf("学号:%s,姓名:%s,成绩:%.2f\n", students[index].id, students[index].name, students[index].score);
}
```
最后,你可以编写一个主函数来实现菜单功能,让用户通过菜单来选择相应的操作。例如:
```c
#include <stdio.h>
#include <string.h>
int main() {
int choice;
do {
printf("\n======== 学生成绩管理系统 ========\n");
printf("1. 添加学生信息\n");
printf("2. 删除学生信息\n");
printf("3. 修改学生信息\n");
printf("4. 查询学生信息\n");
printf("0. 退出程序\n");
printf("请选择操作:");
scanf("%d", &choice);
switch (choice) {
case 1:
add_student();
break;
case 2:
delete_student();
break;
case 3:
modify_student();
break;
case 4:
query_student();
break;
case 0:
printf("谢谢使用!\n");
break;
default:
printf("无效的选项,请重新选择!\n");
break;
}
} while (choice != 0);
return 0;
}
```
以上是一个简单的学生成绩管理系统的代码示例,可以根据实际需求进行修改和完善。
阅读全文