大一C语言学生成绩管理系统代码怎么敲
时间: 2023-10-17 08:05:32 浏览: 90
这里提供一个简单的C语言学生成绩管理系统代码,供参考:
```c
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define MAX_STUDENTS 100 // 最大学生数
#define MAX_NAME_LEN 20 // 姓名最大长度
typedef struct {
char name[MAX_NAME_LEN]; // 姓名
int score; // 分数
} Student;
int main() {
Student students[MAX_STUDENTS]; // 学生数组
int num_students = 0; // 学生数量
// 选择操作
while (1) {
printf("请选择操作:\n");
printf("1. 添加学生\n");
printf("2. 删除学生\n");
printf("3. 修改分数\n");
printf("4. 查看所有学生\n");
printf("5. 退出程序\n");
printf("请选择(1-5):");
int choice;
scanf("%d", &choice);
switch (choice) {
case 1: { // 添加学生
if (num_students == MAX_STUDENTS) {
printf("已经达到最大学生数量,无法添加!\n");
break;
}
Student student;
printf("请输入学生姓名:");
scanf("%s", student.name);
printf("请输入学生分数:");
scanf("%d", &student.score);
students[num_students++] = student; // 将学生添加到数组中
printf("学生 %s 添加成功!\n", student.name);
break;
}
case 2: { // 删除学生
if (num_students == 0) {
printf("学生列表为空,无法删除!\n");
break;
}
char name[MAX_NAME_LEN];
printf("请输入要删除的学生姓名:");
scanf("%s", name);
int index = -1;
for (int i = 0; i < num_students; i++) {
if (strcmp(students[i].name, name) == 0) {
index = i;
break;
}
}
if (index == -1) {
printf("没有找到该学生!\n");
} else {
for (int i = index; i < num_students - 1; i++) {
students[i] = students[i + 1];
}
num_students--;
printf("学生 %s 删除成功!\n", name);
}
break;
}
case 3: { // 修改分数
if (num_students == 0) {
printf("学生列表为空,无法修改!\n");
break;
}
char name[MAX_NAME_LEN];
printf("请输入要修改分数的学生姓名:");
scanf("%s", name);
int index = -1;
for (int i = 0; i < num_students; i++) {
if (strcmp(students[i].name, name) == 0) {
index = i;
break;
}
}
if (index == -1) {
printf("没有找到该学生!\n");
} else {
int new_score;
printf("请输入新的分数:");
scanf("%d", &new_score);
students[index].score = new_score;
printf("学生 %s 分数修改成功!\n", name);
}
break;
}
case 4: { // 查看所有学生
if (num_students == 0) {
printf("学生列表为空!\n");
break;
}
printf("姓名\t分数\n");
for (int i = 0; i < num_students; i++) {
printf("%s\t%d\n", students[i].name, students[i].score);
}
break;
}
case 5: { // 退出程序
printf("退出程序!\n");
exit(0);
}
default: {
printf("无效的操作,请重新输入!\n");
break;
}
}
}
return 0;
}
```
该代码实现了一个简单的学生成绩管理系统,包括添加学生、删除学生、修改分数和查看所有学生等功能。用户可以根据菜单进行选择操作。
阅读全文