C语言学生成绩管理系统代码流程解析
-
定义了一个结构体类型'struct Student',其中包括学生的姓名、学号、计算机成绩、数学成绩、英语成绩、总分和平均分。
-
定义了一个结构体类型'node',其中包括数据域'st'和指针域'pnext'。
-
在主函数中,先输出了一个操作界面,包括录入学生信息、显示学生信息、增加学生信息、删除学生信息、修改学生信息、查找学生信息和按总分排序等选项。
-
根据用户输入的操作命令,调用对应的函数进行操作。
-
在录入学生信息函数'Input()'中,先定义一个头结点'phead',并为头结点分配内存。然后根据输入的学生人数,利用'for'循环遍历学生信息,录入每个学生的姓名、学号、计算机成绩、数学成绩和英语成绩,并计算总分和平均分。然后为新结点分配内存,并将新结点挂到老结点后面,最后返回头结点'phead'。
-
在显示学生信息函数'Show()'中,先定义一个指针'p',用于遍历学生信息。然后输出学生的姓名、学号、计算机成绩、数学成绩、英语成绩、总分和平均分。
-
在增加学生信息函数'Add()'中,先输入插入结点的位置,然后利用'while'循环找到需要插入的位置。然后输入需要插入的学生的姓名、学号、计算机成绩、数学成绩和英语成绩,并计算总分和平均分。最后为新结点分配内存,并将新结点挂到老结点后面。
-
在删除学生信息函数'Delete()'中,先输入需要删除的学生编号,然后利用'while'循环找到需要删除的位置。然后将需要删除的结点从链表中摘除,并释放内存。
-
在修改学生信息函数'Change()'中,先输入需要修改的学生的姓名,然后利用'while'循环找到需要修改的学生。然后输出修改前的学生信息,提示输入新的学生信息,输入后计算总分和平均分。最后修改学生信息。
-
在查找学生信息函数'Search()'中,先输入需要查找的学生的姓名,然后利用'while'循环找到需要查找的学生,并输出该学生的信息。
-
在按总分排序函数'Sort()'中,利用两个指针'p'和'q',遍历链表并比较相邻两个学生的总分大小,如果前一个学生的总分小于后一个学生的总分,则交换两个学生的位置,直到排序完成。
-
主函数中的'while'循环不断循环,直到用户选择退出程序。
原文地址: https://www.cveoy.top/t/topic/osnO 著作权归作者所有。请勿转载和采集!