精品welcome 数 据 结 构课程设计报告书学校青岛科技大学学号姓名指导老师刘勇精品welcome 课程设计的名称: 学生成绩管理1.问题描述:学生成绩管理是学校教务管理的重要组成部分,其处理信息量很大,该题目是对学生的成绩管理作一个简单的模拟,其中学生信息包括:学号、姓名与成绩。成绩分为课程1 成绩、课程 2 成绩、课程3 成绩和总成绩。要求设计一个简易的成绩管理系统,输入各门功课的成绩后能自动求出总成绩,并通过菜单选择操作方式完成下列功能:①登记学生成绩;②②查询学生成绩;③插入学生成绩;④④删除学生成绩;⑤按总成绩降序排序。2.基本要求:该题目涉及到单链表的各种操作,包括单链表的建立、结点的查找、 插入、删除等基本运算。首先建立学生成绩单链表,链表中每个结点由4 个域组成,分别为:学号、姓名、成绩、存放下一个结点地址的next 域。然后将要求完成的四项功能写成四个函数,登记学生成绩对应建立学生单链表的功能,后三个功能分别对应单链表的查询、插入与删除三大基本操作。精品welcome 3.算法思想:Creat() 函数算法思想:从0 至 n 循环输入 n 个同学的三科成绩,并且计算总成绩。Inquiry()函数算法思想:将学号与已输入的所有学号做比较,一旦相同则输出该学号信息,否则显示没有该学生信息。Insert () 函数算法思想:生成一个新节点,然后将其接到原有链表尾部。Delete() 函数算法思想:通过ID 找到该节点,并删去该节点。Sort( 函数算法思想:利用排序算法对每一个节点作比较并更换其在链表中的位置顺序。4.模块划分(1)LinkList Creat(LinkList T,int n)其功能是创造节点,录入成绩。(2)void Inquiry(LinkList T)其功能是查询与已知ID 一致的学生信息并展示出来。(3)void Insert(LinkList T,int n) 其功能是添加若干个学生的成绩信息。(4)void Delete(LinkList T) 其功能是删除若干个学生的成绩信息。(5)void Sort(LNode *p) 其功能是排序并展示若干个学生的成绩信息。5.数据结构:数据类型 LNode定义如下:typedef struct LNode{精品welcome int ID;char name[20];int score1;int score2;int score3;int total;struct LNode *next;}LNode,*LinkList;6.源程序:源代码//main.c#include #include typedef struct LNode{int ID;char name[20];int score1;int score2;int score3;精品welcome int total;struct ...