1 交通资讯系统 1.系统需求分析 1.1 问题描述 在交通网络非常发达的今天,人们出差、旅游或做其他出行时,不仅关心节省交通费用,而且对里程和所需时间等问题也很感兴趣。对于这样一个人们关心的问题,可用一个图结构来表示交通网络系统,利用计算机建立一个交通咨询系统。图中顶点表示城市,边表示城市之间的交通关系。设计一个交通咨询系统,能让旅客咨询从任一个城市顶点到达另外一个城市顶点之间的最短路径(里程)的问题。 1.2 功能要求 1.交通资讯系统提供用户三种决策方案:一是建立交通网络图的存储结构。二是 某个城市到达其余各城市的最短路径。三是实现两个城市之间最短路径的问题。主 要目的是给用户提供路径咨询。 2.本系统规定: (1)在程序中输入城市名称时,需输入 0 到 5 的城市代号 (2)在选择功 能是,应输入与所选功能对应的一个整形数据。 (3)程序的输出信息主要是:城市代号,某城市到达其余各城市的最短路径,两城市之间最短路径 2 2.概要设计 2.1 系统总体设计 图2.1 系统总体设计 2 .2 各模块的功能 v oid main() 主函数 v oid Dijkstr() 采用狄克斯特拉算法求从顶点v 到其余个顶点的最短路径 v oid DisPath() 由path 计算最短路径 v oid Ppath() 输出各条最短路径 v oid Floy d() 采用弗洛伊德算法求所有顶点之间的最短路径 v oid DisPath2() 由path 计算最短路径 v oid Ppath2() 输出各条最短路径 交通资讯系统 一个城市到其他城市 两个城市之间 存 储 交 通图 查询最短距离 获得最佳路径 查询最短距离 获得最佳路径 3 2.3 相关数据结构设计 1.数据结构 typedef int InfoType; typedef struct {char cityname; int no; InfoType info; }VertexType; typedef struct { int edges[MAXV][MAXV]; int n,e; VertexType vxs[MAXV]; }MGraph; 2.数据库结构:下表构成该系统的基本数据库 城市代号 邻接矩阵边数组 城市个数 路径 城市名称 int int int int char 3.详细设计 3.1 采用c 语言定义相关的数据结构 本系统定义了整形int,字符型char,还有结构体定义,建立图的存储结构 首先定义交通图的存储结构,邻接矩阵是表示图形中顶点之间相邻关系的矩阵.设G=(V,E)是具有n(n>0)个顶点的图,则邻接矩阵具有如下定义的n 阶方阵 Wij 若vi≠vj 且∈E(G) A[i][j]= ∞ 其他 一个图的邻接矩阵表示是...