分类号 编 号
课 程 设 计
题目 全国交通咨询系统
院 系 信息工程学院 专 业 计算机科学与技术 姓 名 学 号
指 导 教 师
word文档 可自由复制编辑
目录
1 需求分析 ............................................... 3 1.1 问题描述 ...................................................................................... 3 1.2 基本要求 ...................................................................................... 3 2 概要设计 ............................................... 4 2.1数据结构 ....................................................................................... 4 2.2 程序模块 .................................................................................... 8 2.2.1 管理员模块 ..................................................................... 8 2.2.2 客户查询 .......................................................................... 8 2.3各模块之间的调用关系以及算法设计 ....................................... 8 2.3.1各个模块之间的调用关系 ................................................. 8 3 详细设计 .............................................. 9 3.1 管理员模块 ................................................................................ 9 3.2 用户查询模块 ............................................................................ 10 3.3 函数调用关系图 ........................................................................ 10 4 测试与分析 ............................................ 12 4.1合法数据的测试 ......................................................................... 12 4.1.1 测试截图 .......................................................................... 12 4.2 非法数据的测试 ........................................................................ 17 五.总结 ................................................ 18 参考文献 ................................................ 21 附录 .................................................... 21
word文档 可自由复制编辑
全国交通咨询系统
1 需求分析
1.1 问题描述
随着我国交通系统的发展,从一个城市到另一个城市可以选择多个交通工具,比如火车,飞机。不同的交通工具的价格,所用的时间也不一样。
对旅客来说,可以根据自己的时间安排,资金的情况选择不能的交通工具和不同的乘车路线。本系统就是主要完成这个的功能,旅客在出发前可以根据出发地和到达地查询不同的路线,旅客可以有三个决策方案,第一个是时间最短,第二个是费用最小,第三个是中转次数最少。
对管理员来说,可以对城市进行增加,可以对列车时刻表和飞机航班表的信息进行的增加。
1.2 基本要求
① 输入的形式和输入值的范围
在程序中输入城市名称时,需输入10个字母以内的字母串;输入列车或飞机编号时需输入一个整型数据;输入列车或飞机的费用时需输入一个实型数据;输入列车或飞机开始时间和到达时间时均需输入两个整型数据(以hh:mm的形式);在选择功能时,应输入与所选功能对应的一个整型数据。
② 输出的形式
程序的输出信息主要是:最快需要多少时间才能到达,或最少需要多少旅费才能到达,或最少需要多少次中转到达,并详细说明依次于何时乘坐哪一趟列车或哪一次班机到何地。
③ 程序所能达到的功能
(1)管理员可以细化为对城市信息的管理,对列车时刻表的管理,对飞
word文档 可自由复制编辑
机航班表的信息的管理,初始化交通图;
(2)用户可以查询两个城市之间的航班和车次。用户只需要选择起始城市和目的城市,就可以选择时间最短、费用最少和中转次数最少的方案; (3)用户可以按照自己的需求选择乘坐飞机和火车。 (4)退出系统。
2 概要设计
2.1数据结构
(1)本程序运用了关于图这种数据结构。图的存储结构采用邻接表的结
构抽象数据类型定义。
typedef struct {int number; float expenditure; int begintime[2]; int arrivetime[2]; }Vehide; typedef struct
{Vehide stata[MAX_ROUTE_NUM]; int last; }infolist;
typedef struct ArcNode {int adjvex;
struct ArcNode *nextarc;
word文档 可自由复制编辑
infolist info; }ArcNode;
typedef struct VNode {char cityname[10];
ArcNode *planefirstarc,*trainfirstarc; }VNode,AdjList[MAX_VERTEX_NUM]; typedef struct {AdjList vertices;
int vexnum,planearcnum,trainarcnum; }ALGraph; typedef struct Node {int adjvex; int route; struct Node *next; }Node;
typedef struct QNode {int adjvex; struct QNode *next; }QNode; typedef struct {QNode *front; QNode *rear;
word文档 可自由复制编辑