网站大量收购独家精品文档,联系QQ:2885784924

数据结构(C语言)实验报告(校园导游咨询)分析.docx

数据结构(C语言)实验报告(校园导游咨询)分析.docx

  1. 1、本文档共24页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《数据结构与算法》实验报告 需求分析 【问题描述】 设计一个校园导游程序,为来访的客人提供各种信息查询服务。 【基本要求】 (1)设计你所在学校的校园平面图,所含景点不少于10个。以图中顶点表示校内各景点,存放景点名称、代号、简介等信息;以边表示路径,存放路径长度等相关信息。 (2)为来访客人提供图中任意景点相关信息的查询。 (3)为来访客人提供图中任意景点的问路查询,即查询任意两个景点之间的一个最短的简单路径。 【测试数据】 由读者根据实际情况指定。 【实现提示】 一般情况下,校园的道路是双向通行的,可设校园平面图是一个无向网。顶点和边均含有相关信息。 【选作内容】 (6)扩充每个景点的邻接景点的方向等信息,使得路径查询结果能提供详尽的导向信息。 概要设计 1)抽象数据类型定义描述 #includeiostream using namespace std; const int MaxSize=18; const int INFINITY=65535;//最大值无穷 class direction; template class T class MGraph; template class T class VertexNode//定义景点结点,存储景点信息 { friend class MGraphT; public: int vex;//景点名称 T vexname;//景点名称 T vexinf;//景点信息 direction dir;//存放景点方位信息的direction类的dir。 }; class direction { public: int ln;//存放在方向图中的横坐标,表示东西 int col;//存放在方向图中的纵坐标,表示南北 }; template class T class MGraph//定义无向图的邻接矩阵 { public: MGraph(); //构造函数,初始化具有n个顶点的图 void printvexname();//显示所有景点及景点代号 void printvexinf(int i);//显示代号为i景点的名称及信息 void printroad(int i,int j);//显示景点i~j的最短路径方案信息 void printdir(int i,int j);//显示景点i到j的方向信息,如“向东100m,向南200m” VertexNodeT adjlist[MaxSize]; //存放景点全部信息的 景点类数组 int vertexNum,arcNum; //图的顶点数和边数 void Root(int p,int q);//递归寻找pq间的最短路径 int Path[MaxSize][MaxSize],Dist[MaxSize][MaxSize];//创建Path和Dist分别存放两点间最短路径的前驱节点,两点间最短路径长度 int Line[MaxSize];//Line存放路径 int kkk;//在floyed算法中,做Line[]数组的标记 private: T vertex[MaxSize]; //存放图中顶点的数组 int arc[MaxSize][MaxSize];//存放图中边的数组 }; 2)功能模块设计(如主程序模块设计) int funcchoice()//系统功能选择页面 { int choice; cout==============================================================endl; cout 欢迎进入校园导游咨询平台endl; cout 1--显示校园所有景点信息endl; cout 2--查询校园景点信息endl; cout 3--问路查询系统endl; cout 4--退出导游资讯平台endl; cout==============================================================endl; cout请输入要选择的功能号:; cinchoice; return choice; } 3)模块层次调用关系图 主程序菜单模式 问路模块 printroad(int i,int j) 查询信息模块 printvexname() 显示所有景点信息模块printvexinf(int i) 方位信息模块 printdir(int p,int q) 最短路径模块 Fl

文档评论(0)

四月 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档