数据结构课程设计实验报告..docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据结构课程设计实验报告.

《数据结构》课程设计报告 题目: 实现队列的基本操作 班级: 09软件冶金(2班) 姓名: 杨 健 学号: 0 9 2 4 5 2 1 1 完成日期: 2011年1月6号 目 录 一、需求分析…………………………………….第3页 二、概要设计……………….……………………第4页 三、详细设计……………………..……………...第5页 四、调试分析…………………….……………....第7页 五、用户使用说明……………………………….第7页 六、测试结果…………………………………….第8页 七、附录………………………………………….第9页 一、需求分析 任选一种存储方式表示队列,用C++语言编程实现队列的以下基本操作: 1) InitQueue :构造一个空队列 2) DestroyQueue :销毁队列 3) ClearQueue :将队列清空 4) QueueEmpty :判定队列是否为空队列 5) QueueLength :返回Q的元素个数 6) GetHead :获取Q的队头元素 7) EnQueue :向队列Q中插入新元素 8) DeQueue :删除队列Q中的元素 9) QueueTraverse :依次读取队列Q中的每个元素 输入的形式:字符,以‘0’结束。 输入值的范围:字母皆可。 输出的形式:队列。 程序所能达到的功能:创建队列,销毁队列,清空队列,判断队列是否为空,返回队列长度,获取队头元素,插入新的队尾元素,删除队头元素并返回其值,遍历队列,退出程序。 测试数据: 目录: A B C D E F G H I K 请输入您选择的操作: 输入:A 请输入您要创建的队列 按0结束 输入:shujujiegou0 队列创建成功 输入:H 遍历结果为:shujujiegou 输入:D 该队列不为空 输入: E 该队列长度为:11 输入:F 队头元素为:s 输入:H 队头元素已删除,其值为:s 输入:I 遍历结果为:hujujiegou 输入:G 请输入您要添加的队尾元素 按#结束 s# 新的队尾元素插入成功! 输入:I 遍历结果为:hujujiegous 输入:C 队列已清空 输入:D 该队列为空队列 输入:I 队列为空 输入:B 队列销毁成功 输入:K Press any key to continue 二、概要设计 抽象数据类型的定义: typedef char QElemType; typedef struct QNode QElemType data; struct QNode *next; QNode,*QueuePtr; typedef struct QueuePtr front; QueuePtr rear; LinkQueue; 主程序的流程: 首先定义一些变量;然后输出目录,提示用户选择操作;接下来就是一个switch语句,根据用户的选择进行操作;最后case 1,case2,case 3,case 4,case 5,case 6,case 7,case 8,case 8,case 0分别实现“创建队列,销毁队列,清空队列,判断队列是否为空,返回队列长度,获取队头元素,插入新的队尾元素,删除队头元素并返回其值,遍历队列,退出程序”功能。 各程序模块之间的层次 调用 关系: 主函数调用实现各个功能的子函数以实现对应的功能。 三、详细设计 创建空队列 status InitQueue LinkQueue Q Q.front Q.rear QueuePtr malloc sizeof QNode ; if !Q.front return OVERFLOW; Q.front- next NULL; return OK; 销毁队列 status DestroyQueue LinkQueue Q while Q.front Q.rear Q.front- next; free Q.front ; Q.front Q.rear; return OK; 清空队列 void ClearQueue LinkQueue Q Q.front Q.rear; Q.front- next NULL; 判断队列是否为空 status QueueEmpty LinkQueue Q if Q.front Q.rear return TRUE; else return FALSE; 返回队列长度 int QueueLength LinkQueue Q int i 0; while ! Q.front Q.rear Q.front Q.front- next; ++i; return i; 获取队头元素 st

文档评论(0)

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

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

1亿VIP精品文档

相关文档