校园导游程序的设计与实现课程设计.docVIP

  • 63
  • 0
  • 约7.84千字
  • 约 21页
  • 2016-11-27 发布于浙江
  • 举报

 校园导游程序的设计与实现课程设计.doc

 校园导游程序的设计与实现课程设计

海南大学 课程名称 数据结构(基于C语言)课程设计 题 目 校园导游程序的设计与实现 院 系 _ 信息科学技术学院____ 班 级 __通信工程B班_ 软件专题训练任务书 软件专题训练题目 校园导游程序 姓名 学号 专业班级 组别 组长 同组成员 指导教师 吴泽辉 2.咨询以用户和计算机的对话方式进行,由用户输入起始点和终点,输出信息:最短路径是多少?并指出所经过的场所。 3、计算并记录从校门口到各个场所的最短路径,即求单源点到其它各个场所的最短路径。 4、提供校园中任意场所的问路查询,即求任意两点之间的最短路径。 二、数据结构的设计: 由于各个场所通过校园中的道路相连,各个场所和连接它们的道路构成了整个校园的地理环境,所以使用图这种数据结构对他们去进行描述。以图中的顶点表示校园内各个场所,应包含场所名称、代号、简介等信息;以边表示连接各个场所的道路,应包含路径的长度等信息;顶点和边均使用结构体定义,整个图的数据结构采用教材中介绍的带权的邻接矩阵方法。 二、数据结构的设计: typedef struct ArCell { int adj; //路径长度 }ArCell,AdjMatrix[MAX_VERTEX_NUM][MAX_VERTEX_NUM]; typedef struct //图中顶点表示主要景点,存放景点的序号、名称、介绍等信息, { char name[30]; int num; char introduction[100];//简介 }infotype; typedef struct { infotype vexs[MAX_VERTEX_NUM]; AdjMatrix arcs; int vexnum,arcnum; }MGraph; MGraph b; void cmd(void) { int i; b=InitGraph(); Menu(); scanf(%d,i); while(i!=4) { switch(i) { case 1:Browser(b);Menu();break; case 2:ShortestPath_DIJ(b);Menu();break; case 3:Floyd(b);Menu();break; case 4:exit(1);break; default: printf(输入序号不存在,请重新输入);break; } scanf(%d,i); } MGraph InitGraph(void) { MGraph G; int i,j; G.vexnum=10; G.arcnum=14; for(i=0;iG.vexnum;i++) G.vexs[i].num=i; strcpy(G.vexs[0].name,海南大学北门); strcpy(G.vexs[0].introduction,高大威武); strcpy(G.vexs[1].name,文化柱); strcpy(G.vexs[1].introduction,海大学子健康成长,激情飞扬的地方); strcpy(G.vexs[2].name,图书楼); strcpy(G.vexs[2].introduction,藏书丰富,设施良好,知识的摇篮); strcpy(G.vexs[3].name,3号教学楼); strcpy(G.vexs[3].introduction,海大学子努力学习,坚持向上的场所 ); strcpy(G.vexs[4].name,第一田径场); strcpy(G.vexs[4].introduction,标准化跑道,适宜锻炼身体的场所); strcpy(G.vexs[5].name,男生宿舍楼); strcpy(G.vexs[5].introduction,房间设施良好,标准六人间); strcpy(G.vexs[6].name,海大餐厅); strcpy(G.vexs[6].introduction,厅内卫生整洁,环境宜人); strcpy(G.vexs[7].name,联谊馆); strcpy(G.vexs[7].introduction,内有乒乓球馆,排球馆,室内篮球馆等设施); strcpy(G.vexs[8].name,女生宿舍楼); strcpy(G.vexs[8].introduction,房间设施良好,标准六人间); strcpy(G.vexs[9].name,海大东门); strcpy(G.vexs[9].introduction,外有建设银行); for

文档评论(0)

1亿VIP精品文档

相关文档