1、 利用链式储存对学生 成绩进行基本操作 数 据 结 构 课 程 设 计 设计题目:利用链式储存对学生成绩进行基本操作 学生姓名: 专业班级: 指导教师: 完成时间: 学 院 系 *课程设计成绩评定表(本科) 课题名称 利用链式储存对学生成绩进行基本操作 院 系 年级专业 学 号 姓 名 成 绩 课题设计 目的与 设计意义 1.课题设计目的: (1)掌握线性表的链式储存的基本概念及存储结构. (2)利用线性表的链式储存对学生成绩进行基本操作。包括创建、插入、 删除、排序等功能。功能上要以菜单选项形式体现出来,可以与用户良好的 交互。 (3)通过本次设计型实验,使我们在学习完 C、数据结构等课程基
2、础上对 前面所学的知识做一个总结与回顾。 2课题设计意义: (1)利用单链表的链式储存具有较强的可应用性和实践性, 在课程设计的过 程中,不但我们可以独立思考,而且还可以查阅各种资料。 (2)通过该课程设计,使我们对老师课上的讲述有了更深的理解,让我们 学有所思。 (3)将单链表的链式储存应用到具体生活中,使我们了解了数据结构这一 门课在实际生活中的应用。 指导教师: 年 月 日 目目 录录 第一章.课程设计的目的及要求 1 第二章.课程设计的内容和要求 1 2.1 内容 . 1 2.2 要求 . 1 第三章.课程设计分析分析 . 1 3.1 设计思路及方案 1 3.2 模块设计与介绍 3 3
3、.2.1 结构类型声明部分 . 3 3.2.2 类型域声明部分 3 3.2.3 置空链表部分 3 3.2.4 创建链表部分 3 3.2.5 查找学生信息部分 . 4 3.2.6 输出学生信息部分 . 4 3.2.7 插入学生信息部分 . 5 3.2.8 删除学生信息部分 . 5 3.2.9 对学生信息进行排序部分 5 3.2.10 主函数部分 6 第四章 算法描述 . 7 第五章 数据结构描述与定义 7 5.1 结构题: . 7 5.2 结构体数组: 8 5.3 程序架构图 8 第六章.源程序 . 8 第七章 运行结果分析 12 第八章.结束语 . 14 第九章.参考文献 . 15 1 第一章
4、第一章. .课程设计的目的及要求课程设计的目的及要求 此次设计意义在于让我们更好的去掌握 C 的基本语法、 函数以及 Visual C+ 集成编译环境。单链表的链式储存等基本数据结构及其应用。掌握程序流程以及 基本应用方法。 通过本课程设计,培养我们进行课程设计能力。 在当今信息爆炸的时代, 如何采用较好的信息技术对一些数据元素进行基本 操作来为人类很好地服务。 线性表的链式储存正是一种应用广泛且非常有效的数 据处理技术。 第二章第二章. .课程设计的内容和要求课程设计的内容和要求 2.1 内容 (1).创建线性表。 (2).实现对线性表的链式储存对学生成绩进行基本操作,包括插入、 删除、查找
5、,排序等操作。 2.2 要求 硬件: 计算机 软件: Windows Microsoft Visual C+6.0 第三章第三章. .课程设计分析分析课程设计分析分析 3.1 设计思路及方案 本课题是用线性表的链式储存来对学生进行基本操作的功能。 设计思 路及方案,可用流程图来表示。 2 图 1 函数主流程图 继续输入 图 2 建立学生信息链表 N Y 图 3 删除信息流程成图 输入 4 输入 1 结束 信息输入 删除信息 结束 开始 输入一个值 输出开场效果的菜单 显示,输入一个值 插入 查找 删除 排序 结束 3 N Y 图 4 查找信息流程图 3.2 模块设计与介绍 3.1.1 结构类型
6、声明部分 #include typedef struct int num; char name20; float score; std; 3.2.2 类型域声明部分 typedef int datatype; typedef struct node std data; struct node *next; linklist; 3.2.3 置空链表部分 void setnull(linklist *head) head=(linklist *)malloc(sizeof(linklist); head-next=NULL; 3.2.4 创建链表部分 void creatlist(linklist *head,int n) 输入 2 查找信息 结束 4 int i; linklist *p,*tail; tail=head; for(i=1;idata.num, p