这是本科数据结构课设时设计的一个校园导游咨询系统,包含界面可视化,功能丰富,欢迎参考,觉得可以的话,可以点个赞,谢谢!
需求分析
一、课题内容分析
-
设计内容:设计一个**大学校园导游程序,为来访的客人提供各种信息查询服务。
-
具体功能有:
-
(1)设计**大学的校园平面图,以图中顶点表示校内各景点,存放景点名称、代号、简介等信息;以边表示路径,存放路径长度等相关信息。
-
(2)为来访客人提供图中任意景点相关信息的查询。
-
(3)为来访客人提供图中任意景点的问路查询,即查询任意两相景点之间的一条最短的简单路径。
-
(4)提供图中任意景点问路查询,即求任意两个景点之间的所有路径。
-
(5)提供校园图中多个景点的最佳访问路线查询,即求途经这多个景点的最佳路径。
二、设计思路
- 校园导游咨询系统模型是由景点和景点之间的路径组成的,所以可以用图的数据结构来实现。用图的结点代表景点,用图的边代表景点之间的路径。首先设计一个图类,结点值代表景点信息,边的权值代表景点间的距离。结点值及边的权值使用文件存储,通过读取文件来获取景点信息和景点之间的距离。计算任意两景点之间的最短路径可以使用Floyd算法实现,使用深度优先遍历算法来实现两景点之间的所有路径。最后用switch选择语句来执行不同编号的功能。
三、系统模块划分

四、需求分析
3.1 所需知识点
- (1) 图的各种遍历算法
- (2) 单源最短路径(Dijkstra算法)
- (3) 所有顶点对的最短路径(Floyd算法)
- (4) 图的基本存储结构(邻接矩阵)
- (5) 文件的读取存储操作
- (6) 界面交互
3.2 数据结构
- 本课题用到的数据结构是图的数据结构,其中用到的是图的邻接矩阵存储结构。
typedef struct { /*存放景点信息的结构体*/
int num; /*景点代号*/
char name[20]; /*景点名称*/
char intro[200]; /*景点简介*/
}vertextype;
typedef int edgtype; /*权值类型*/
typedef struct { /*校园景点图结构体*/
vertextype vexs[M]; /*顶点信息域*/
edgtype edge[M][M];

最低0.47元/天 解锁文章
3596

被折叠的 条评论
为什么被折叠?



