当前位置:主页 > 无痛人流 >

c语言成绩管理系统 c语言成绩管理系统代码

  • 无痛人流
  • 2025-08-22 11:40
  • 来源:www.renliuw.cn
  • 无痛人流手术

```scss

构建学生成绩管理系统

我们设定了一个学生成绩管理系统的基本框架,它能够存储、查询和排序学生的成绩信息。这个系统可以容纳最多 100 名学生的信息。

我们定义了一个结构体 `Student`,包含了学生的学号、姓名和三门课程的成绩(C语言、数学和英语),以及总分和平均分。我们创建了一个名为 `stu` 的数组来存储所有学生的信息,并设定了一个计数器 `count` 来追踪当前已录入的学生数量。

系统的核心是一个简洁明了的菜单,通过打印一系列选项供用户选择。菜单包括:

添加学生记录:允许用户输入新学生的信息并添加到系统中。如果已达到最大学生数量(100人),系统将提示用户人数已满。

显示所有记录:显示所有已录入的学生信息。

按学号查询:根据用户输入的学号,查找并显示对应学生的所有信息。

按总分排序:对所有学生按总分进行排序,方便用户查看。

删除记录:允许用户根据学号删除特定学生的记录。

保存到文件:将系统中所有学生的信息保存至文件,以防数据丢失。

从文件加载:从之前保存的文件中加载学生信息,恢复系统状态。

退出系统:结束程序运行。

当我们选择“添加学生记录”时,系统会先检查是否已达到最大学生数量。如果未满,则提示用户依次输入学生的学号、姓名和三门课程的成绩。系统会自动计算总分和平均分,并将新录入的学生信息添加到 `stu` 数组中,同时更新计数器 `count`。系统会通知用户添加成功。

```c

// 展示所有学生信息

void showAllStudents() {

printf("学号\t姓名\tC语言\t数学\t英语\t总分\t平均分");

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

printf("%s\t%s\t%.1f\t%.1f\t%.1f\t%.1f\t%.1f",

stu[i].id, stu[i].name, stu[i].c_score,

stu[i].math, stu[i].english, stu[i].total, stu[i].avg);

}

}

// 按学号查询学生信息

void searchStudentById() {

char id[20];

printf("请输入要查询的学号:");

scanf("%s", id);

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

if (strcmp(stu[i].id, id) == 0) {

printf("查询结果:");

printf("学号:%s 姓名:%s C语言:%.1f 数学:%.1f 英语:%.1f",

stu[i].id, stu[i].name, stu[i].c_score,

stu[i].math, stu[i].english);

return;

}

}

printf("未找到该学生!");

}

// 按总分排序学生信息并展示

void sortStudentsByTotal() {

for (int i = 0; i < MAX_STUDENTS - 1; i++) {

for (int j = 0; j < MAX_STUDENTS - i - 1; j++) {

if (stu[j].total < stu[j+1].total) {

Student temp = stu[j];

stu[j] = stu[j+1];

stu[j+1] = temp;

}

}

printf("排序完成!");

showAllStudents(); // 展示排序后的学生信息

}

}

// 将学生信息保存到文件

void saveToFile() {

FILE fp = fopen("student.dat", "wb");

if (fp == NULL) {

printf("文件打开失败!");

return;

}

fwrite(&count, sizeof(int), 1, fp); // 写入学生数量

fwrite(stu, sizeof(Student), count, fp); // 写入学生信息数组

fclose(fp); // 关闭文件指针并保存数据到文件

程序员的日常:代码的世界里的与挑战

在这个充满技术与创新的时代,程序员们犹如家,勇闯代码的世界,未知的领域。他们的一天,就像一场充满挑战和乐趣的征途。

清晨的阳光刚刚洒满大地,他们便开始了新一天的编程之旅。打开熟悉的编辑器,一行行代码跃然纸上,这是他们与世界沟通的方式。每一个符号、每一个语句,都是他们思维的痕迹,也是他们与计算机共同创作的魔法。

上午的时光,他们在代码的丛林中跋涉。时而遇到复杂的算法,如同解谜一般,需要深思熟虑,寻找最佳的解决方案。每当解决一个难题,他们的内心都会涌现出满满的成就感,仿佛攻克了一座城堡。

午餐过后,他们继续投身代码的世界。调试程序,优化代码,每一个细节都不放过。他们的眼睛犹如鹰一般敏锐,能够发现代码中的微小错误,并迅速地修复。他们的思维如飞流长空,不断地在代码中穿梭,寻找更好的解决方案。

傍晚时分,他们测试着新编写的程序,就像是试飞一架新造的飞机。每一次成功,都让他们欣喜若狂,仿佛到了新的领域。而失败,则是他们前进的动力,让他们更加坚定地,寻找问题的答案。

夜幕降临,他们仍然沉浸在代码的海洋中。编写文档,整理思路,为明天的挑战做好准备。他们的心中充满了对技术的热爱和对未来的憧憬,他们知道,只有不断地和挑战,才能在这个充满变化的世界中立足。

这就是程序员的日常,一场在代码世界中的与挑战。他们用自己的智慧和热情,创造着美好的未来。每一行代码,都是他们的誓言和承诺,他们是这个时代的者,也是未来的创造者。

无痛人流