1 / 15
文档名称:

校园导游系统实训报告.doc

格式:doc   大小:73KB   页数:15页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

校园导游系统实训报告.doc

上传人:非学无以广才 2019/9/7 文件大小:73 KB

下载得到文件列表

校园导游系统实训报告.doc

文档介绍

文档介绍:校园导游系统实训报告导游咨询系统1需求分析编制一个为来访客人进行最短路径导游的程序(1)从学校的平面图上选取n个有代表性的景点,根据用户指定的起点和终点输出相应路径,或根据用户指定的景点输出景点的信息。(2).为来访客人提供图中任意景点相关信息的查询。(3).为来访客人提供图中任意景点的问路查询,即查询任意两个景点之间的一条最短的简单路径。2、设计思路 校园旅游模型是由景点和景点之间的路径组成的,所以这完全可以用数据结构中的图来模拟。用图的结点代表景点,用图的边代表景点之间的路径。所以首先应设计一个图类。(草稿纸)结点值代表景点信息,边的权值代表景点间的距离。结点值及边的权值用顺序表存储,所以需要设计一个顺序表类。本系统需要查询景点信息和求一个景点到另一个景点的最短路径长度及路线,为方便操作,所以给每个景点一个代码,用结构体类型实现。计算路径长度和最短路线时可用弗洛伊德(Floyd)算法实现。最后用switch选择语句选择执行浏览景点信息或查询最短路径。3 算法设计一、 概要设计 程序中包含的模块(1)主程序模块主函数:void main()  (2)查询模块景点信息查询:voidCreateUDN()(3)打印模块打印两个景点的路径及最短距离:void display() 模块间的调用关系主函数main()调用:voidCreateUDN() voidShortestPath()/*要查找的两景点的最短距离*/ voidNextValue()voidHaMiTonian()void display() /* 打印两个景点的路径及最短距离*/  详细设计界面菜单设计:charMenu(){charc;intflag;do{flag=1;system("cls");narrate();printf("\t\t\t-------1、查询景点路径-------\n");printf("\t\t\t-------2、查询景点信息-------\n");printf("\t\t\t-------3、推荐参观路线-------\n");printf("\t\t\t-------e、退出-----------\n");printf("\t\t\t\t请输入您的选择:");scanf("%c",&c);if(c=='1'||c=='2'||c=='3'||c=='e')flag=0;}while(flag);returnc;}charSearchMenu(){charc;intflag;do{flag=1;system("cls");narrate();printf("\t\t\t-----1、按照景点编号查询-----n");printf("\t\t\t-----2、按照景点名称查询-----n");printf("\t\t\t-----e、返回-----------n");printf("\t\t\t\t请输入您的选择:");scanf("%c",&c);if(c=='1'||c=='2'||c=='e')flag=0;}while(flag);returnc;}voidsearch(){intnum;inti;charc;charname[20];do{system("cls");c=SearchMenu();switch(c){case'1':system("cls");narrate();printf("\n\n\t\t请输入您要查找的景点编号:");scanf("%d",&num);for(i=0;i<NUM;i++){if(num==[i].number){printf("\n\n\t\t\t您要查找景点信息如下:");printf("nnttt%-25snn",[i].description);printf("\n\t\t\t按任意键返回...");getchar();getchar();break;}}if(i==NUM){printf("\n\n\t\t\t没有找到!");printf("\n\n\t\t\t按任意键返回...");getchar();getchar();}break;case'2':narrate();system("cls");printf("\n\n\t\t请输入您要查找的景点名称:");scanf("%s",name);for(i=0;i<NUM;i++){if(!strcmp(name,[i].sight)){printf("\n\n\t\t\t您要查找景点信息如下:");printf("\n\n\t\t\t%-25snn",[i].description);printf("\n\t\t\t按任意键返回...");getchar();getchar()