- 1、本文档共31页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构课程设计报告
PAGE
PAGE #
目录
TOC \o 1-5 \h \z \o Current Document 一、 需求分析 3
\o Current Document 二、 个人工作 4
\o Current Document 三、 概要设计 4
\o Current Document 1主程序流程图: 4
2 ?创建图算法流程图: 5
\o Current Document 四、 源程序 13
\o Current Document 五、 程序结果 24
5.3设计和调试分析 27
\o Current Document 六、 程序设计体会 28
全国交通咨询模拟系统
一、需求分析
旅客对由于出行目的的不同对交通工具的要求也有不同。例如,因公事出差
的旅客希望在旅途中的时间尽可能短, 出门旅游的游客则希望旅费尽可能省, 而 老年旅客则要求中转次数最少。为了能满足广大旅客的需求,方便旅客出行,就 此编制一个全国城市间的交通咨询程序,为旅客提供两种或者三种最优决策的交 通咨询,达到如下的基本要求::
(1) 提供对城市信息进行编辑(如:添加和删除)的功能 ?
(2) 城市之间有两种交通工具:火车和飞机。提供对列车时刻表和飞机航 班表进行编辑(增加或删除)的功能。
(3) 提供两种最优决策:最快到达和最省钱到达。全程只考虑一种交通工 具。
(4) 旅途中耗费的总时间应该包括中转站的等候时间。
(5) 咨询以用户和计算机的对话方式进行。由用户输入起始站、终点站、 最优决策原则和交通工具,输出信息:最快需要多长时间才能到达或 者最少需要多少旅费才能到达,并详细说明依次于何时乘哪趟列车或 哪一次班机到何地。
(6) 通过对比以及用户操作基本达到旅客出行的便利。
二、个人工作
此次课程设计是对全国城市交通图列车时刻表及飞机航班表的编辑。 此次课
设是利用VC工具在dos环境下实现全国交通的咨询与管理。通过此次程序可以 对全国城市之间火车与飞机进行两方面的咨询, 即最少的时间与最少的费用的咨 询,从而方便旅客的出行。通过此次课程设计,我要学会怎样用在 VC dos环境
下编程,而且要通过此次课程设计加深对数据结构的理解, 在设计中用邻接表作
交通图的存储结构,表示边的结点中除含有邻接点的信息外,还包括交通工具、 路程中消耗的时间和花费以及出发和到达的时间等属性。图中顶点城市的信息, 包括城市名称、城市编号和依附该顶点的边的指针。
在程序中,利用迪杰斯特拉算法求花钱最少和花时间最少的交通方式。
三、概要设计
1.主程序流程图:
2.创建图算法流程图:
3.打开图算法流程图:
结束
i++
4.主菜单操作算法流程图:
5.咨询菜单流程图
6.咨询钱最少模块图
7. input_Money(Graph G, int st,int sn)算法流程图
结束
输入终止城市名称
8. inputVex(G,st算法流程图
9. LocateVex(G,name,)算法流程图
10. print_Money(GT,p)算法流程图
11. LeastMoneyPath(GT,st,nd,p算法流程图
重置每个顶点的最少钱的路径
dijkst
[p-elem.jvex]=p-elem. Money
t=p-elem
SetPath(path[p-elem.jvex],st,p-elem.jvex,t)
1
p=q
11. ShortestTimePath(GT,st,nd,p算法流程图
ii
ii
12. Manage_Menu(GT,GP)算法流程图
13. City_Edit(GT,GP)算法流程图
开始
J
V
输入
n进行选择
PAGE
PAGE #
14. Train_Edit(GT,GP)算法流程图
注释:部分算法的设计思想相同,只是参数不同,故省略部分程序流程图。
四、源程序
**********顶点、边和图类型
**********
顶点、边和图类型
#defi ne MAXVTXNUM 30
〃图中顶点数的最大值
********************************
typedef struct 〃定义各车次及航班的信息 弧的信息
{
int ivex;int jvex;
int ivex;
int jvex;
char Number[10];
int Mon ey;
int StartTime;
int En dTime;
int Time;
}Edge Info;
typedef struct EdgeNode
//起始点号
//终点号
//车次号
//费用
〃起始时间(秒)
〃终止时间(秒)
〃中途时间(秒)
〃边的信息
〃边的信息 弧结点
Edg
文档评论(0)