欢迎来到天天文库
浏览记录
ID:56747901
大小:450.00 KB
页数:22页
时间:2020-07-07
《太工校园导游咨询系统---数据结构课程设计.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、太原工业学院校园导游咨询系统1需求分析本程序的主要目的是为了提供本学校的景点的路径咨询,为来访的客人提供各种信息查询服务。1、为来访的客人提供图中任意景点相关信息的查询。2、为来访的客人提供图中任意景点的路径查询,即查询任意两个景点之间的最短简单路径。3、为客人显示所有景点。2概要设计本程序包含的几个函数:voidcmd(void);//在主函数中用来调用其他应用子函数的函数声明MGraphInitGraph(void);//用来构造学校地图的子函数返回MGraph类型voidMenu(void);//菜单函数;voidBrow
2、ser(MGraph*G);//调用MGraph类型的地址,进行voidShortestPath_DIJ(MGraph*G);//迪杰斯特拉算法求最短路径的子函数voidFloyd(MGraph*G);//佛洛伊德算法voidSearch(MGraph*G);//寻找要查询的景点,并输出该景点的信息voidbrowse_view_distribute();//查看景点分布图voidtou(MGraph*G);//景点列表voidpanduan();intLocateVex(MGraph*G,char*v);//定点位置MGrap
3、h*CreatUDN(MGraph*G);//初始化图形,接受用户输入voidprint(MGraph*G);//打印输出子函数voidmain(void)3详细设计从学院的平面地图中选取出几个个有代表性的景点,将其抽象成无向带权网并用邻接矩阵来表示。以图中的顶点代表景点,存放景点名称、代号、简介等信息,权值代表两地之间的距离。1、图的存储结构如下:typedefstructArCell{intadj;//路径长度}ArCell,AdjMatrix[MAX_VERTEX_NUM][MAX_VERTEX_NUM];typedefs
4、truct//图中顶点表示主要景点,存放景点的编号、名称、简介等信息,{charname[30];intnum;charintroduction[200];//简介}infotype;typedefstruct{infotypevexs[MAX_VERTEX_NUM];//景点AdjMatrixarcs;//路径数组intvexnum,arcnum;//景点数,路径长度记录}MGraph;4测试分析(这是初始化界面)选择1选择2选择35使用说明选择1时,可以查看校园的大致地图。选择2,输入起点和终点的位置,系统会给出最佳路线,选
5、择3时,可查询任意景点的信息.6测试结果略7附录(源代码)#defineINFINITY10000/*无穷大*/#defineMAX_VERTEX_NUM40#defineMAX40#include#include#include#include#include#include"Exit.h"typedefstructArCell{intadj;//路径长度}ArCell,AdjMatrix[MAX_VERTEX_NUM][MAX_
6、VERTEX_NUM];typedefstruct//图中顶点表示主要景点,存放景点的编号、名称、简介等信息,{charname[30];intnum;charintroduction[200];//简介}infotype;typedefstruct{infotypevexs[MAX_VERTEX_NUM];//景点AdjMatrixarcs;//路径数组intvexnum,arcnum;//景点数,路径长度记录}MGraph;MGraphb;//全局变量voidcmd(void);//在主函数中用来调用其他应用子函数的函数声明
7、MGraphInitGraph(void);//用来构造学校地图的子函数返回MGraph类型voidMenu(void);//菜单函数;voidBrowser(MGraph*G);//调用MGraph类型的地址,进行voidShortestPath_DIJ(MGraph*G);//迪杰斯特拉算法求最短路径的子函数voidFloyd(MGraph*G);//佛洛伊德算法voidSearch(MGraph*G);//寻找要查询的景点,并输出该景点的信息voidbrowse_view_distribute();//查看景点分布图voi
8、dtou(MGraph*G);//景点列表voidpanduan();intLocateVex(MGraph*G,char*v);//定点位置MGraph*CreatUDN(MGraph*G);//初始化图形,接受用户输入voidprint(MGraph*G);
此文档下载收益归作者所有