欢迎来到天天文库
浏览记录
ID:19315258
大小:130.93 KB
页数:11页
时间:2018-10-01
《数据结构课程设计 校园导游系统》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、西安郵電學院*****设计报告题目:校园导游系统院系名称:计算机学院专业名称:计算机科学与技术班级:学生姓名:学号(8位)指导教师:设计起止时间:2011年12月12日~2011年12月16日一.设计目的校园导游系统--为了系统的把前后的知识连贯的学会应用,了解一个地图是怎么用C语言的形式表达存储的。二.设计内容校园导游系统—这是西安邮电学院的一个校园导游图,内容有:管理员管理(有地图的输入,保存文件);客户访问(景点查询,景点打印,景点信息,最短路线查询)。三.概要设计1.功能模块图;1.输入地图数据校
2、园导游系统—2.返回主菜单管理员菜单0.退出系统Y密码N1.列出景点系统2.列出景点详细信息主菜单3.景点查询客户访问菜单4.景点最短路线查询5.返回主菜单0.退出系统主菜单2.各个模块详细的功能描述。校园导游系统—三个选项:1.AdministratorLogin—管理员登陆;2.ClientAccess—客户登陆;0.Exitthesystem—退出系统。管理员菜单三个选项:1.InputAttractionsMap—输入地图信息;2.BacktothemainMenu—返回主菜单;0.Exitthe
3、system—退出系统。客户访问菜单六个选项:1.ListoftheAttractions—列出景点;2.Printthevertex'sinformation–打印景点信息;3.Findattractions—景点查询;4.Searchtheshortestpath—最短路径查询;5.Backtothemainmenu—返回主菜单;0.Exitthesystem—退出系统。四.详细设计1.功能函数的调用关系图校园导游系统—系统中的所有函数如下:1)voidmain();2)voidCipher();//
4、密码3)voidMainMenu();//主菜单4)voidAdministratorMenu();//管理员菜单5)voidCustomerMenu();//客户访问菜单6)intLocateVertex(AdjMatrix*G,intv);//求顶点位置函数7)voidCreateGraph(AdjMatrix*G);//建立图函数8)voidSaveGraphFile(AdjMatrix*G);//保存图到文件函数9)voidDiaplayGraph(AdjMatrix*G);//打印图函数10)v
5、oidFindAttractions();//景点查找11)voidTraverseGraph();//图的遍历12)voidDepthFirstSearch(AdjMatrix*G,intv0);//图的深度优先搜索13)voidPrintGraph();//打印图14)voidReadGraphInfoFile(AdjMatrix*g);//读取图的景点信息文件15)voidReadGraphFile(AdjMatrix*g);//读取图矩阵文件16)voidShortestPath_Floyd(Ad
6、jMatrix*g);//弗洛伊德算法17)voidShortestPath_Print();//两点间的最短路径函数调用关系:ab:a调用b1)3)5)2)11)10)17)13)3)4)7)3)15)14)8)6)16)9)12)输入地图数据返回主菜单返回主菜单最短路径查询景点查询列出景点打印景点信息2.各功能函数的数据流程图校园导游系统—函数7)voidCreateGraph(AdjMatrix*G);为创建图,然后,调用8)voidSaveGraphFile(AdjMatrix*G)保存到文件啊中
7、。函数11),13),10),17)都需调用14),15)来读取文件中的数据。分别完成相应的功能。3.重点设计及编码校园导游系统—程序中定义的结构体,数据:#defineM100#defineINFINITY0#defineTrue1#defineFalse0intvisited[M];intdist[M][M];//最短路径长度intpath[M][M];//最短路径typedefstructVerInfo{intver;//景点编号charname[M];/景点名字/charinformation[M
8、];//景点信息}VerInfo;typedefstructArcNode{intadj;//权值}ArcNode;typedefstruct{VerInfovertex[M];//顶点数组ArcNodearcs[M][M];//邻接矩阵intvexnum,arcnum;//定点数和弧数}AdjMatrix;重点函数intLocateVertex(AdjMatrix*G,intv)//求定点位置函数{intk;for(k=0;
此文档下载收益归作者所有