数据结构校园导游课程设计报告-

上传人:左****笑 文档编号:145925417 上传时间:2020-09-24 格式:DOCX 页数:7 大小:138.50KB
返回 下载 相关 举报
数据结构校园导游课程设计报告-_第1页
第1页 / 共7页
数据结构校园导游课程设计报告-_第2页
第2页 / 共7页
数据结构校园导游课程设计报告-_第3页
第3页 / 共7页
数据结构校园导游课程设计报告-_第4页
第4页 / 共7页
数据结构校园导游课程设计报告-_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《数据结构校园导游课程设计报告-》由会员分享,可在线阅读,更多相关《数据结构校园导游课程设计报告-(7页珍藏版)》请在金锄头文库上搜索。

1、一、设计目的与内容1设计目的设计一个校园导游程序,为来访的客人提供各种信息查询服务。2设计内容1 设计学校的校园平面图,所含13个景点,以图中顶点表示校内各景点,存放景点名称、代号、简介等信息;以边表示路径,存放路径长度等相关信息。2 为来访客人提供图中任意景点相关信息的查询。3 为来访客人提供景点的问路查询,即已知一个河南紫薇景点,查询到某景点之间的一条最短路径及长度。4 退出导游程序。二、算法的基本思想1 使用菜单页,选择不同的功能(景点信息查询、求最短路径、最短路径距离、退出程序等),进行相应的操作;2 采用数组作为数据的存储结构,存储检索出的路径、最短距离等;3 利用short函数运算

2、,求两地间的距离,并输出其路径;4 主程序有掌控函数调用,选择功能模块执行,在程序运行工程中可以反复操作。算法的思路是三、需求分析1 本系统是把校园平面图抽象成一个无向网 ,取校园中 13 个代表性景点作为图的顶点 ,存放顶点名称、代号、简介等有关信息 、并以边表示路径 ,两景点间的距离作为边的权值。以二维数组的数据结构存储构建无向图,costij;当i=j及i点与j点无直接连通时,其值为无穷大,定义一个很大的整数Init_Length代替无穷大。当i与j点连接时,其值为两点间的权值即两点间距离。2 本程序的目的是为用户提供路径咨询和景点查询。根据用户指定的始点和终点输出相应路径或者根据用户指

3、定的景点输出景点的信息。1 查询景点信息将相应景点信息存入函数print中,依据需要调用读取该函数,并显示在屏幕上。2 两点间最短路径利用shortestdistance函数逐级循环,查训两景点间所有路径距离,将最短路径距离存入Dv中;并将所查得的景点存储在二维数组pathij中;执行输出命令输出最短路径及距离。3 执行exit(0);函数跳入退出界面执行退出操作。四、概要设计1程序的模块儿图本程序的算法依据无向图的操作通过introduce函数查找景点的信息,通过shortestdistance函数来查找最短距离,开始时首先从print函数读取景点的编号、名称、介绍和两个景点之间的距离即权值

4、,然后将其加入到图中,再调用查找introduce函数查找景点的信息,调用shortestdistance函数来查找最短距离,调用退出函数实现退出功能,其模块图如下所示:文件读取加入图查找信息退出最短距离屏幕显示屏幕显示开 始2主函数void main() 的概要设计基于程序的操作要求,对于主函数的设计首先是调用fun函数显示一个可视化的操作界面,提醒游客进行相关的操作接着调用print函数显示景点列表,提示游客其可供选择的景点的名称,便于在后面的操作过程中能够快速方便的找到其需要查找的景点的名称。而后就是一个switch();的选择函数,提供查找河南紫薇等景点信息,查找两个景点之间的最短距离

5、和退出的相关的选择操作而后进入到每一个操作界面当中,从而实现所需要的功能。3查找介绍函数void introduce() 的概要设计当游客选择了要查找景点的信息的介绍这一项功能的时候,就会进入到查找的界面,对于查找景点信息就是利用printf();函数,当游客输入万次火柴等景点的名称的时候看其是否与文件当中的数据相匹配,如果有则输出它的介绍,如果没有则输出错误的提示提醒游客进行相关的操作来进入到正确的操作过程当中。4查找最短路径函数void shortestdistance() 的概要设计对于查找最短路径的这一项功能,是以二维数组costij构建无向图,其中i、j为景点代码,当i=j及i点与j

6、点无直接连通时,其值为无穷大,定义一个很大的整数Init_Length代替无穷大。当i与j点连接时,其值为两点间的权值即两点间距离。经过三成for循环:for(i=2;i14;+i) min=Init_Length;for(w=1;w14;+w)if(finalw=0)&(Dwmin)v=w;min=Dw;finalv=1; for(w=1;w14;+w) if(finalw=0)&(min+costvwDw) Dw=min+costvw;for(j=1;j%d,pathwi);printf(n);printf(最短路径的长度为: %dn,Dw);输出最短路径和最短路径长度。5退出函数的概要设

7、计关于退出函数,则是当游客执行完了他想要进行的操作过后选择退出的功能的时候就调用退出函数exit(0);跳入到退出界面实现退出的功能。6程序的流程图若要更加实际的了解该程序的算法,需要依据程序的流程图来给我们一个比较实际的过程,从流程图当中能够更加清楚整个程序实现的过程是怎样的。其流程图如下所示:Start创建无向图写入无向图中读取文件信息Case ICase SCase E查找信息最短路径End F T F T五、运行界面,运行结果1主函数调用功能菜单的输出若输入不是服务项i、e或s;提醒输入错误重新输入2查询景点信息选择功能编号i进入景点查询输入景点编号,若输入不是1-13间的的景点编号则

8、提醒输入错误,重新输入输入正确如3,则输出景点介绍;并输出主功能菜单3查找最短路径测试数据 1(南门)至7(网络中心万次火柴)结果如下输出最短路径及距离,且输出主功能菜单。4结束程序输入e退出系统结果如下六、总结 在这次的数据结构课程设计中,我们的目的是在写出正确的语句的情况下要求达到简练、易懂。在此过程中我们认识到了自己的不足,对已学知识掌握不够熟练,不能活学活用已学结构体。起初在求最短路径的过程中不知道应该构造什么样的数据结构。如何在借助参考书和共同讨论下最终写出了最短路径的程序,圆满完成了此次的课程设计。同时也让我对数据结构这门课有了新的认识。参考文献【1】 谭浩强。C程序设计(第三版)。北京:清华大学出版社,2005年7月【2】 王昆仑。数据结构与算法。,2007年6月第一版【3】 章炯民。窦亮,黄国兴。数据结构与算法教程。上海:华东师范大学出版社,2007年7月第一版【4】 侯风巍。数据结构要点分析C语言版。,2007年3月第一版7

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号