数据结构课程设计(附代码).docVIP

  1. 1、本文档共42页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第 PAGE 1 页 第 PAGE 1 页 上海应用技术学院课程设计报告 课程名称 《数据结构课程设计》 设计题目 猴子选大王;建立二叉树;各种排序;有序表的合并;成绩管理系统; 院系 计算机科学与信息工程 专业计算机科学与技术 班级 姓名 学号 指导教师 日期 目的与要求 巩固和加深对常见数据结构的理解和掌握 掌握基于数据结构进行算法设计的基本方法 掌握用高级语言实现算法的基本技能 掌握书写程序设计说明文档的能力 提高运用数据结构知识及高级语言解决非数值实际问题的能力 课程设计内容说明 项目一 对设计任务内容的概述 学生成绩管理** 任务:要求实现对学生资料的录入、浏览、插入和删除等功能。 输入:设学生成绩以记录形式存储,每个学生记录包含的信息有:学号和各门课程的成绩,设学生成绩至少3门以上。存储结构:采用线性链式结构。 详细设计 LinkList *create():输入学生成绩记录函数; void print(LinkList *head):显示全部记录函数 LinkList *Delete(LinkList *head):删除记录函数 LinkList *Insert(LinkList *head):插入记录函数 void menu_select():菜单选择 void ScoreManage():函数界面 程序流程图 3. 3.删除学生记录 4.插入学生记录 1.输入学生记录 输入n(0n6) 主界面 2.输出学生记录 退出 学生成绩管理系统 5.退出 判断n n=5 n=1、2、3、4 程序模块及其接口描述 该程序可以分为以下几个模块: 1、菜单选择:void menu_select(); 提供五种可以选择的操作,在main函数中通过switch语句调用菜单menu_select()函数,进入不同的功能函数中完成相关操作。 2、输入功能:LinkList *create(); 通过一个for循环语句的控制,可以一次完成无数条记录的输入。并将其存入链表。 3、输出功能:void print(LinkList *head); 通过一个while的循环控制语句,在指针p!=NULL时,完成全部学生记录的显示。知道不满足循环语句,程序再次回到菜单选择功能界面。 4、删除功能:LinkList *Delete(LinkList *head); 按想要删除的学生的学号首先进行查找,通过指针所指向结点的下移来完成,如果找到该记录,则完成前后结点的连接,同时对以查找到的结点进行空间的释放,最后完成对某个学生记录进行删除,并重新存储。 5、插入功能:LinkList *Insert(LinkList *head); 输入你想插入的位置,通过指针所指向结点的下移,找到该位置,将该新的学生记录插入到该结点,并对该结点后面的指针下移。链表长度加一,重新存储。 程序的输入与输出描述 输入:调用LinkList *create()函数,输入学生的姓名、学号、三门功课的成绩; 输出:调用void print(LinkList *head)函数,输出学生的记录。 程序测试 主菜单: 成绩管理系统的主界面: 学生成绩记录的输入: 输出学生成绩记录: 学生成绩记录的删除(删除学号是1101的学生记录) 插入新的学生成绩记录(插入学号为1103的学生记录) 尚未解决的问题或改进方向 尚未解决的问题:该成绩管理系统还存在不少缺陷,而且它提供的功能也是有限的,只能实现学生成绩的输入、输出、删除、插入。对于,学生成绩记录的文件保存以及按学号、姓名等的查询也是缺少的。还有就是,对于多个学生成绩的操作也是不够的。 改进的方向:在时间许可的条件下,尽量的完善该系统的各种功能,同时也应修改系统,让它更为人性化、简单化,被广大用户所接受。 对软件的使用说明 该软件是属于比较低级的软件,只是包含了课程设计的要求的几个功能:输入、输出、删除、插入。所以用户在使用的过程中肯定会受到一定的局限性、不方便性,但由于时间的缘故,无法将软件做到尽善尽美。 项目二 对设计任务内容的概述 各种排序 任务:用程序实现插入法排序、选择法排序、起泡法改进算法排序; 利用插入排序、选择法排序和冒泡法的改进算法,将用户随机输入的一列数按递增的顺序排好。 输入的数据形式为任何一个正整数,大小不限。 输出的形式:数字大小逐个递增的数列。 功能描述 该函数有以下几个功能: 对R[0..n-1]按递增有序进行直接插入排序 对R[0..n-1]按递增有序进行冒泡排序 对R[0..n-1]按递增有序进行直接选择排序 排序后的输出

文档评论(0)

celkhn5460 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档