《校园导游系统Word版》由会员分享,可在线阅读,更多相关《校园导游系统Word版(20页珍藏版)》请在人人文库网上搜索。

1、传播优秀Word版文档 ,希望对您有帮助,可双击去除!课程设计报告课程名称: 数据结构与算法 题目名称: 校园导游系统 学生学院: 数学与计算机科学系 专业班级: 2016级计算机科学与技术本科班 小组组长: 王明 小组成员: 王明 郑双凤 吕运发 指导老师: 熊小颖 老师 2017年10月15日目录一、设计目的3二、问题描述3三、基本要求3四、概要设计3五、主程序4六、测试数据136.1调试程序所用数据136.2程序的调试结果七、总结一、设计目的 随着现代社会生活节奏的加快,人们外出旅行以寻求放松的时间越来越多。考虑到游客不可能对所有景点都有所了解,因此可能无法找到游玩景点最省时,最高效的路。

2、径,而人工导游成本又过高,故使用C语言,基于数据结构中图的相关算法开发了“南昌师范学院导游系统”。 开发本系统目的在于为来访我校的游客提供一条最短游览路径,本系统从实际出发,通过对校园平面图的分析,将其转化为数据并保存在系统中,因此系统提供的路径具有较大的可信性。二、问题描述设计校园导游程序,为来访的客人提供服务,为来访我校的游客提供一条在游客当前位置到目的地的最短游览路径,找到游玩景点最省时,最高效的路径。三、 基本要求1. 假设有一所校园的平面图,所含景点不小于10个,请选择适当的坐标来表示出该图上的各个景点。2. 为来访的客人提供从当前位置到其他景点的最短路径的咨询;3. 必须具有校园平。

3、面图的修改和扩充功能(即某些景点坐标的修改和景点个数的增加)。四、 概要设计算法思路本设计的重难点在于问题二的解决。利用了弗洛伊德算法函数设计Floyd() 本算法在设计时参考了数据结构C语言版一书中有关Floyd算法的介绍,同时借鉴了如今网上流行的设计方式。之所以选择本算法来实现计算最短路径,原因在于本算法容易理解,可以算出任意两个节点之间的最短距离,代码编写简单。但是,本算法缺点在于时间复杂度过高,不适合用于计算大量数据。Floyd算法首先将两景点间路径长度数据存储于数组Dvw中,而后使用一个三维数组用于存放最短路径所经过的顶点,接下来使用三重循环判断两景点之间直接路径是否大于间接路径,若。

4、大于,则将三维数组中存放的顶点信息更改为简介路径所经过的顶点信息。以上部分完成后,当用于标记输入数据是否合法的flag=1时,输出错误信息,提示用户重新输入,当输入数据合法时,输出以上程序得到结果。五、 主程序#include#include#define MAX_VERTEX_NUM 100 /最大顶点数#define MAX_INT 10000 /无穷大 typedef int AdjType; typedef structint piMAX_VERTEX_NUM;/存放v到vi的一条最短路径int end;PathType;typedef char VType; /设顶点为字符类型typ。

5、edef structVType VMAX_VERTEX_NUM; /顶点存储空间 AdjType AMAX_VERTEX_NUMMAX_VERTEX_NUM; /邻接矩阵 MGraph;/邻接矩阵表示的图/Floyd算法/求网G(用邻接矩阵表示)中任意两点间最短路径 /D是最短路径长度矩阵,path最短路径标志矩阵 void shortdistance(MGraph * G,int pathMAX_VERTEX_NUM,int DMAX_VERTEX_NUM,int n) int i,j,k;for(i=0;iAijAij; for(k=0;kDik+Dkj)Dij=Dik+Dkj;/取小者。

6、 pathij=pathik;/改Vi的后继 for(i=0;in;i+)/输出每对顶点间最短路径长度及最短路径for(j=0;jn;j+)printf(V%d到V%d的最短长度:,i,j); printf(%dt,Dij);/输出Vi到Vj的最短路径长度k=pathij;/取路径上Vi的后续Vkif(k=-1)printf(There is no path between V%d and V%dn,i,j);/路径不存在 elseprintf(最短路径为:); printf(V%d,i);/输出Vi的序号iwhile(k!=j)/k不等于路径终点j时 printf(,V%d,k);/输出kk。

7、=pathkj;/求路径上下一顶点序号 printf(,V%d)n,j);/输出路径终点序号 printf(n); int introduce(char scenery)getchar();printf(请输入景点对应的大写字母n);scanf(%c,&scenery);switch(scenery)default:printf(没有该景点n);case A:printf(图书馆,距离南大门100米n);break;case B:printf(实验楼,距离南大门200米n);break;case C:printf(理科楼,理科类学生上课地点n);break;case D:printf(女宿舍楼。

8、,南昌师范学院的女孩子的家n);break;case E:printf(男宿舍楼,南昌师范学院的男孩子的家n);break;case F:printf(大学生活动中心,大学生活动休闲场所n);break;case G:printf(田径场,运动会举办场地n);break;case H:printf(逸夫大礼堂,各种活动举办场所n);break;case I:printf(体育馆,正在建设中n);break;case J:printf(综合楼,领导办公处n);break;case K:printf(北大门,学校出口n);break;return 0;int main()char kk;char 。

9、scenery;int i,j,k,v=A,m=11;/v为起点,n为顶点个数 MGraph G;int pathMAX_VERTEX_NUMMAX_VERTEX_NUM;/v到各顶点的最短路径向量int DMAX_VERTEX_NUMMAX_VERTEX_NUM;/v到各顶点最短路径长度向量 char VMAX_VERTEX_NUM=A,B,C,D,E,F,G,H,I,J,K;int aMAX_VERTEX_NUMMAX_VERTEX_NUM= /初始化 0,50,200,100,MAX_INT,MAX_INT,MAX_INT,MAX_INT,MAX_INT,MAX_INT,MAX_INT,。

10、50,0,100,MAX_INT,MAX_INT,MAX_INT,MAX_INT,MAX_INT,MAX_INT,MAX_INT,MAX_INT,200,100,0,MAX_INT,MAX_INT,100,50,MAX_INT,MAX_INT,MAX_INT,MAX_INT,100,MAX_INT,MAX_INT,0,500,200,MAX_INT,MAX_INT,MAX_INT,MAX_INT,MAX_INT,MAX_INT,MAX_INT,MAX_INT,500,0,300,MAX_INT,300,MAX_INT,300,500,MAX_INT,MAX_INT,100,200,300,0,。

11、400,200,100,MAX_INT,MAX_INT, MAX_INT,MAX_INT,MAX_INT,MAX_INT,MAX_INT,400,0,100,300,MAX_INT,MAX_INT,MAX_INT,MAX_INT,MAX_INT,MAX_INT,200,200,100,0,MAX_INT,400,MAX_INT,MAX_INT,MAX_INT,50,MAX_INT,MAX_INT,100,300,MAX_INT,0,MAX_INT,MAX_INT,MAX_INT,MAX_INT,MAX_INT,MAX_INT,300,MAX_INT,MAX_INT,400,MAX_INT,0,。

12、300,MAX_INT,MAX_INT,MAX_INT,MAX_INT,500,MAX_INT,MAX_INT,MAX_INT,MAX_INT,300,0;for(i=0;im;i+)for(j=0;jm;j+)G.Aij=aij; printf(*n);printf(* *n);printf(* *n);printf(* 欢迎使用南昌师范学院校园咨询系统!*n);printf(* *n );printf(* *n );printf(*n);printf(n);while(1)printf(1.景点信息查询请按“1”键:n);printf(2.景点最短路径查询(弗洛伊德算法)请按“2”键:n)。

13、;printf(3.景点最短路径查询(迪杰斯特拉算法)请按“3”键:n);printf(4.校内景点地图查询请按“4”键:n);printf(5.退出系统请按“5”键 :n);printf(请选择:n);scanf(%c,&kk);switch(k)case1:printf(景点介绍查询n);introduce(scenery);break;case2:printf(景点最短路径查询(弗洛伊德算法)n);shortdistance(&G,path,D,11);break;case5:printf(谢谢使用!n);exit(0);return 0;六、 测试数据6.1调试程序所用数据6.2程序的。

14、调试结果七、 总结经过小组同学的努力,我们终于结束了这次的课程设计,虽然我们尽了很大的努力,但是其中仍显现出许多的不足。其中在处理查询两景点最短路径这一问题时:一开始对于题目的阅读不够仔细,将随机的当前位置当成了,一进校门的位置作为与其他建筑物的路径距离。浪费了一些时间,之后与重新思考思路。所以由此发现对于需求的正确分析确实很重要。另外经过这次课程设计,我对程序中算法的概念理解的更加透彻。算 法是程序中必不可少的部分,它是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。不同的算法可能用不同的时间、空间或效率来完成同样的任务。同时,在选择 算法时必须考虑算法的时间复杂度和空间复杂度,这样才能让程序正常,高效的运行。程.在计算机科学中,数据结构不仅是一般程序设计(特别是非数值计算的程序设计)的基础,而且是设计和实现编译程序、操作系统、数据库系统及其它系统程序和大型应用程序的重要基础。以上就是我们课程设计的全部内容。

校园导游java版,校园导游系统Word版相关推荐

  1. 签到考勤java课设_Java程序设计课程设计学生考勤系统Word版

    <Java程序设计课程设计学生考勤系统Word版>由会员分享,可在线阅读,更多相关<Java程序设计课程设计学生考勤系统Word版(6页珍藏版)>请在人人文库网上搜索. 1.传 ...

  2. java 模拟 电话本系统 (基础版)

    java 模拟 电话本系统 (基础版) 需求:注意的是,联系人的id是自增长的 实现的功能: java综合编程练习:基本的增删改查,对于逻辑数据的过滤,这块做了简单的处理,暂不优化 ContactPe ...

  3. c语言程序设计作业word版,c语言程序设计Word版

    <c语言程序设计Word版>由会员分享,可在线阅读,更多相关<c语言程序设计Word版(19页珍藏版)>请在人人文库网上搜索. 1.传播优秀Word版文档 ,希望对您有帮助,可 ...

  4. 麒麟955升级鸿蒙系统,鸿蒙系统正式版下载-鸿蒙系统正式版下载手机版 v2.0下载-955游戏网...

    鸿蒙系统正式版下载手机版跟EMUI11不同点: 华为鸿蒙2.0系统是全新的操作系统,兼容安卓应用APP,可以下载安装运行安卓应用APP. 在系统界面方面现在华为鸿蒙2.0系统手机版跟华为EMUI11系 ...

  5. java项目总结范文_2018年java项目总结报告-范文word版 (7页)

    本文部分内容来自网络,本司不为其真实性负责,如有异议或侵权请及时联系,本司将予以删除! == 本文为 word 格式,下载后可随意编辑修改! == java 项目总结报告 java 项目 总结 报告怎 ...

  6. 计算机切换输入法Word关闭,win7旗舰版64位系统下word程序无法切换输入法的解决方法...

    现如今使用win7系统的用户越来越多.在使用的过程中也会遇到各式各样的故障问题.当我们在win7旗舰版64位系统里面编辑word文档的时候,突然发现自己原本使用的好好的输入法突然无法切换了,检查了一下 ...

  7. 基于Java毕业设计校园一卡通服务平台源码+系统+mysql+lw文档+部署软件

    基于Java毕业设计校园一卡通服务平台源码+系统+mysql+lw文档+部署软件 基于Java毕业设计校园一卡通服务平台源码+系统+mysql+lw文档+部署软件 本源码技术栈: 项目架构:B/S架构 ...

  8. Java智慧校园系统源码,智慧学校源码 +小程序+电子班牌

    Java智慧校园系统源码 智慧学校源码 小程序+电子班牌 有演示,可正常上线运营+可授权 开发环境:Java+springboot+vue+element-ui+mysql 一款集智慧教学.智慧教务. ...

  9. 基于JAVA幼儿校园通系统的设计与实现计算机毕业设计源码+系统+数据库+lw文档+部署

    基于JAVA幼儿校园通系统的设计与实现计算机毕业设计源码+系统+数据库+lw文档+部署 基于JAVA幼儿校园通系统的设计与实现计算机毕业设计源码+系统+数据库+lw文档+部署 本源码技术栈: 项目架构 ...

最新文章

  1. android studio val,Kotlin学习笔记之const val与val
  2. Docker swarm集群详解(一)
  3. 用Java实现单向链表
  4. python(matplotlib9)——animation动画
  5. 开源GIS解决方案,暨GeoServer+OpenLayer结合开发总结
  6. java 极客_Java极客思维
  7. vb.net提取html网址,如何提取网页代码中指定内容
  8. W-3 用grub4dos安装Windows7、Ubuntu 12.10双系统(图解)
  9. JQuery 使用笔记 2013.09.05
  10. AutoCAD 经典
  11. Ubuntu18.04运行QQ音乐
  12. 北航计算机控制系统实验报告,北航计算机控制系统实验报告资料.doc
  13. java编程细节总结(一):等于号的作用
  14. matlab汽车驱动力与行驶阻力,驱动力-行驶阻力平衡图matlab编程
  15. python输入国家显示首都名_Java各国首都列表
  16. Oracle查询CLOB类型字段的内容:
  17. 用单片机c51电子秤的c语言,基于51单片机的电子秤系统设计
  18. Django 数据库相关操作 (六)
  19. 共享棋牌室/共享茶室,Java+小程序,sass,方案分享
  20. IDA pro逆向工具寻找socket server的IP和port

热门文章

  1. Python3 OOP(四) 获取对象信息
  2. SQL中常用系统函数
  3. 洛谷——P1119 灾后重建
  4. 【android】环形进度条实现
  5. 在word中,整篇文章想要在每一章另起一页
  6. ORA-06502:PL/SQL :numberic or value error: character string buffer too small
  7. 2013年最值得我们学习的网页作品示例【系列六】
  8. windows重绘机制原理
  9. C++中用new和不用new定义类的对象的区别解答
  10. Remoting实例(同为客户端服务端)