1 华中科技大学文华学院数 据 结 构课 程 设 计 报 告题目:学生信息管理系统专业:计算机应用与技术学号:姓名:指导老师:时间:2 一、总体框架图1、题目:学生信息管理系统2、设计内容及要求:内容:完成简单的学生信息管理系统要求: (1)学生信息包括:学号、姓名、数学成绩、英语成绩、数构成绩; (2)用链表存放学生信息; (3)实现简单的菜单调用; (4)程序的功能包括:学生信息链表的建立;学生信息的显示;学生信息的查询;学生信息的删除;学生信息的插入;编写算法,以实现基本要求。二、本程序用到的基本操作InintList(&l):操作结果:构造一个空的线性表L。DestroList(&L)初始条件:线性表已存在。3 操作结果:销毁线性表。ListInsert(&L,i,e)初始条件:线性表L 已存在,操作结果:在L 中第 i 个位置之前插入新的数据元素e。L的长度加 1.ListDelete(&L,i,e)初始条件:线性表L 已存在且非空操作结果:删除L 的第 i 个数据元素,并用e 返回其值, L的长度减 1.}ADT List三、模块设计模块一 :头文件,变量定义,函数的声明对系统所使用的变量进行定义,对函数进行声明模块二 :结构体的建立,定义学生的学号,名字,和各成绩模块三: 学生信息系统使用菜单声明函数void menu() ,对整个系统进行明模块四:链表的建立,用 void creat()来建立链表模块五: 显示学生信息,声明void print()显示学生的信息模块六 :学生信息的查找声明 void search()为查找函数,通过switch(a)设定用学号查找,用姓名查找两个分支4 模块七 :删除学生信息通过void delete()实现学生信息的删除,确定要删除的信息,再删除掉。模块七 : 插入学生信息,通过void insert()为插入函数,通过switch(a)插入到指定学生的后面。模块八 :学生信息按学号排序声明 void sort()将录入学生系按升序排列,用的是“冒泡排序法”实现排序四、 系统设计流程图五、源代码#include ""#include ""#include ""#define STUDENT 2学生信息管理系菜 单 选退出菜单系统建立链表显示学生信息查询学生信息删除某个学生插入一个学生5 typedef struct student{ int num; //学号 char name[20]; //姓名 int math;//高数 int English;//英语 int Data;//数据结构 struct student *next;}student;student *head=NULL;int length; //链表的长度void create(){ student *p1,*p2; length=0; int number=0;...