交通咨询系统设计
交通咨询系统设计课程设计

课程设计报告课程名称数据结构课题名称交通咨询系统设计专业信息管理与信息系统班级学号姓名指导教师2013 年12月31 日一、设计内容与设计要求1设计内容[问题描述] 在交通网络非常发达的今天,人们出差、旅游或做其他出行时,不仅关心节省交通费用,而且对里程和所需时间等问题也很感兴趣。
对于这样一个人们关心的问题,可用一个图结构来表示交通网络系统,利用计算机建立一个交通咨询系统。
图中顶点表示城市,边表示城市之间的交通关系。
设计一个交通咨询系统,能让旅客咨询从任一个城市顶点到达另外一个城市顶点之间的最短路径(里程)的问题。
[基本功能]1).根据实际情况,先建立交通网络图的存储结构。
2).求某个城市到达其余各城市的最短路径。
3).任一输入两个城市,要求求出他们之间的最短路径。
2设计要求:1).设计正确,方案合理。
2).界面友好,使用方便。
3).程序精炼,结构清晰。
4).设计报告5000字以上,含程序设计说明、系统的功能框图、流程图、源程序清单等。
5).实际操作过程中遇到的问题及解决方法:设计总结及心得体会。
6).上机演示。
二、进度安排第 17 周星期二 8时:00分——11时:30分星期三 8时:00分——11时:30分星期四 14时:00分——17时:30分星期五 8时:00分——11时:30分第 18 周星期一 8时:00分——11时:30分星期二 8时:00分——11时:30分附:课程设计报告装订顺序:封面、任务书、目录、正文、评分、附件(A4大小的图纸及程序清单)。
正文的格式:一级标题用3号黑体,二级标题用四号宋体加粗,正文用小四号宋体;行距为22。
正文的内容:一、课题的主要功能;二、课题的功能模块的划分(要求画出模块图);三、主要功能的实现(至少要有一个主要模块的流程图);四、程序调试;五、总结;六、附件(所有程序的源代码,要求对程序写出必要的注释)。
正文总字数要求在5000字以上(不含程序源代码)。
大数据结构课程设计交通咨询系统设计

适用标准文案设计题目<二>:交通咨询系统设计P160一、设计要求1.问题描绘依据不一样目的的游客对交通工拥有不一样的要求。
比如,因公出差的游客希望在旅途中的时间尽可能的短,出门旅游的游客希望旅费尽可能的少,而老年人则要求中转次数少。
模拟一个全国城市之间的咨询交通程序,为游客供给两种或三种最优的交通路线。
2.需求剖析二、纲要设计1.主界面设计(图“交通咨询系统”主菜单)2.储存构造设计本系统采纳图构造种类储存抽象交通咨询系统的信息。
typedefstructTrafficNode{charname[MAX_STRING_NUM];//班次//MAX_STRING_NUM 最为10intStartTime,StopTime;//起止时间intEndCity;//该有向边指向的极点在数组中的地点,即该城市编号intCost;//票价出色文档}TrafficNodeDat;typedefstructVNode{CityTypecity;intTrainNum,FlightNum;//标志下边Train数组和Flight数组里元素个数TrafficNodeDatTrain[MAX_TRAFFIC_NUM];//数构成员为构造体,记录了到达城市、起止时间、票价和班次TrafficNodeDatFlight[MAX_TRAFFIC_NUM];intCost;//遍历时抵达该城市的耗资(时间或许花费)}VNodeDat;typedefstructPNode{intCity;intTraNo;}PNodeDat;3.系统功能设计1)增添城市。
增添一个城市的名称2)删除城市。
输入一个城市名称,删除该城市。
3)增添交通路线。
输入开端城市、终点城市、航班或火车、车次、开端时间、终点时间和票价4)删除交通路线。
输入火车或飞机的班次删除该交通路线。
5)查问最小花费路线。
输入开端城市、终点城市、航班或火车、车次、开端时间、终点时间查问最小花费路线。
数据结构课程设计—城市道路交通咨询系统

榆林学院数据结构课程设计报告题目城市交通咨询系统作者杨朝专业信息管理与信息系统学号指导老师张慧答辩时间目录1 .系统需求分析 (1)用户需求分析 (1)功能需求分析 (2)数据需求分析 (2)小结 (3)2.系统设计 (3)系统设计功能 (3)每个模块的具体功能。
(4)采用C语言定义相关数据类型 (4)建立邻接矩阵交通网络: (4)查询指定城市到其他城市自己建的最短路程: (6)查询任意两个城市之间的一条最短路径: (7)主函数的调用关系图 (8)3.系统测试 (9)操作说明 (9)测试数据 (10)用户进入界面: (10)、具体功能的实现 (11)、结束程序 (12)4.总结 (13)5.致谢 (13)6.附录 (14)1.系统需求分析现如今网络非常发达,无论人们出差,旅游或者做其他的出行之时,都会想到道路问题,切不仅仅关心的是交通费用,而且对于里程和所需要的时间等的问题也是同样的关心,在此系统中,完全面向用户,可以用一个图结构来表示交通网络系统,利用计算机建立一个交通咨询系统。
且在图中,顶点表示城市,边表示城市之间的交通关系。
设计一个交通咨询系统,能够让旅客咨询从任一城市顶点到达另外一个城市之间顶点的最短路径问题(最短里程问题)。
对系统分析,主要从以下几个方面进行分析。
1.用户需求分析2.功能需求分析3.数据需求分析用户需求分析现如今网络非常发达,无论人们出差,旅游或者做其他的出行之时,都会想到道路问题,切不仅仅关心的是交通费用,而且对于里程和所需要的时间等的问题也是同样的关心,在此系统中,完全面向用户,可以用一个图结构来表示交通网络系统,利用计算机建立一个交通咨询系统。
且在图中,顶点表示城市,边表示城市之间的交通关系。
设计一个交通咨询系统,能够让旅客咨询从任一城市顶点到达另外一个城市之间顶点的最短路径问题(最短里程问题)。
当要查询某两个城市之间的最短交通路线或者其中一个城市到达其余城市的最短路线时,是一个很繁琐的过程。
大数据结构课程设计交通咨询系统设计

设计题目<二>:交通咨询系统设计P160 一、设计要求 1 .问题描述根据不同目的的旅客对交通工具有不同的要求。
例如,因公出差的旅客希望在旅途中的时间尽可能的短,出门旅行的旅客希望旅费尽可能的少,而老年人则要求中转次数少。
模拟一个全国城市之间的咨询交通程序,为旅客提供两种或三种最优的交通路线。
2.需求分析二、概要设计1.主界面设计(图“交通咨询系统”主菜单)2.存储结构设计本系统采用图结构类型存储抽象交通咨询系统的信息typedef struct TrafficNodetmp = k;}printf("%s", AdjList[track[i]].Train[tmp].name);pri ntf("%2d:%2d-%2d:%2d",AdjList[track[i]].Trai n[tmp].StartTime / 60,AdjList[track[i]].Train[tmp].StartTime % 60,AdjList[track[i]].Trai n[tmp].StopTime / 60,AdjList[track[i]].Trai n[tmp].StopTime % 60);else{for (i--; i>0; i--) um;[k++)ghar name[MAX_STRlNG_NUM];jajnN{printf("\n%s:", CityName[track[i]]);end = track[i - 1]; min = 32767;for (k = 0; k<AdjList[track[i]].FlightNum; k++)if (AdjList[track[i]].Train[k].EndCity ==end&&min>AdjList[track[i]].Flight[k].Cost){min = AdjList[track[i]].Flight[k].Cost;tmp = k;}printf("%s",AdjList[track[i]].Flight[tmp].name);printf("%2d:%2d-%2d:%2d",AdjList[track[i]].Flight[tmp].StartTime / 60,AdjList[track[i]].Flight[tmp].StartTime % 60,AdjList[track[i]].Flight[tmp].StopTime / 60,AdjList[track[i]].Flight[tmp].StopTime % 60);}}printf("\n%s: DESTINATION!", CityName[track[0]]);printf("\nMin Cost : %d\n", cost);}void Dijkstra(int matx[Dij_MAXN][Dij_MAXN], int p_start, int p_end, int TravelType){int PreCity[Dij_MAXN]; 添加城市在主菜单下,用户输入 1,添加城市名称(图添加城市)2.删除城市在主菜单下,用户输入2,删除已添加城市名称(图删除城市)3.添加交通路线在主菜单下,用户输入3,已添加城市名称。
交通咨询系统 C语言【范本模板】

CHINA交通咨询系统目录一、需求分析 (2)1、程序的功能及设计要求 (2)2、输入输出的要求 (2)二、环境说明 (2)三、详细设计 (3)1、模块设计 (3)2、画出各函数的调用关系图、主要函数的流程图。
(3)2、详细代码 (4)四、调试分析 (4)1、测试数据: (4)2、借鉴的资料 (5)五、课程总结 (6)六、附录 (6)一、需求分析1、程序的功能及设计要求在交通网络非常发达、交通工具和交通方式不断更新的今天,人们在出差、旅游或做其他出行时,不仅关心节省交通费用,而且对里程和所需时间等问题也感兴趣.对于这样一个人们关心的问题,通过建立交通网络图的存储结构图,提供用户查询的功能,功能一:通过输入城市名及任意两个城市的距离,查询任意两个城市之间的最短距离,从而达到最省目的;功能二:通过输入城市名以及任意两个程序的距离,查询中转路线最少。
程序所具有的功能特色本程序主要目的是为了给用户提供路径咨询,可以通过输入设置,延续程序的拓展性。
设计要求及分析设计一个交通咨询系统,能让旅客咨询从任一个城市顶点到另一城市顶点之间的中转次数最少问题或最低花费或最少时间(最短路径)问题。
该设计共分三个部分:一是建立交通网络图的存储结构;二是解决单源最短路径问题;最后再实现任意两个城市顶点之间的最短路径问题。
1。
建立交通网络图的存储结构要实现设计要求,首先要定义交通图的存储结构:邻接链表和邻接矩阵;2。
解决任意两个城市顶点之间的中转次数最少的问题;3. 解决任意两个城市顶点之间的最短路径(最低花费或最少时间)问题。
2、输入输出的要求定义变量类型应该保持类型一致,通过键盘输入,确保输入输出一致,使最短路径途径以及最短路径能够简单明了的输出,同时保持程序简洁美观,效果明显。
输入要求为输入界面直观、亲切;有利于快速输入;有利于准确输入;有利于输入、修改;方便操作。
输出要求:输出要求应简单、直观,一目了然,尽量符合用户的习惯,便于用户阅读、理解与使用.输出内容应尽量汉字化,从而使输出格式醒目;各种输出设计要长考虑以利于系统发展和输出项目扩充、变动的需要;输出操作方便二、环境说明系统:WINDOS7开发软件:vc6+三、详细设计1、模块设计交通咨询系统模块图如下由模块图可知,该设计共分三个部分:一是建立交通网络图的存储结构;二是解决单源最短路径问题;最后再实现任意两个城市顶点之间的最短路径问题。
交通咨询程设计

交通咨询系统(一)需求分析设计、实现一个全国大城市间的交通咨询程序,为旅客提供三种最优决策方案:一是建立交通网络图的存储结构,二实现两个城市间的最短路经问题。
本程序主要目的是为了给用户提供路径咨询。
实现了帮助用户了解全国各大城市间往来的最短路径问题,可以提供用户查询各大城市的相关信息。
本程序最大的特点是支持用户自己添加城市信息及城市,或添加城市的路径,既有可扩展性。
该程序所做的工作的是模拟全国交通咨询,为旅客提供三种最优决策的交通咨询。
此程序规定:(1)在程序中输入城市名称时,需输入10个字母以内的字母串;输入列车或飞机编号时需输入一个整型数据;输入列车或飞机的费用时需输入一个实型数据;输入列车或飞机开始时间和到达时间时均需输入两个整型数据(以hh:mm的形式);在选择功能时,应输入与所选功能对应的一个整型数据。
(2)程序的输出信息主要是:最快需要多少时间才能到达,或最少需要多少旅费才能到达,或最少需要多少次中转到达,并详细说明依次于何时乘坐哪一趟列车或哪一次班机到何地。
(3)程序的功能包括:提供对城市信息的编辑,提供列车时刻表和飞机航班表的编辑,提供三种最优决策:最快到达、最省钱到达、最少中转次数到达。
.1题目分析1.由题目的分析知全国交通咨询管理系统是有对城市信息的增加、删除、修改、保存、查询、有错时提示出错信息等功能,最后对数据进行保存并退出操作系统。
由此可知需要将函数模块化,将它做为一个独立的函数体去实现它的功能。
它可以分为四大功能模块,每个模块需要去各个击破。
2.根据这些功能和基本要求,可充分运用我们所学的数据结构的基本知识和技能去逐步的解决。
其中将函数进行模块化。
在数据结构中,通过队列,栈,图的声明来实现系统的各种功能的存储各城市之间乘火车的消耗价格,时间,乘飞机的价格,时间,以及中转站最少。
利用指针和结点来实现城市与城市之间各种操作,而这些知识点都是我们学习数据结构必须掌握和学会运用的。
数据结构课程设计全国交通咨询系统

数据结构课程设计全国交通咨询系统数据结构课程设计全国交通咨询系统随着交通工具的快速发展,现代人的出行方式更加灵活便捷,交通行业也变得越来越重要。
然而,随之而来的交通拥堵、安全问题和出行效率等问题亟待解决。
因此,交通咨询系统的开发应运而生。
本文介绍一个数据结构课程设计项目——全国交通咨询系统,该系统旨在为用户提供便捷、全面的交通出行信息和服务。
该系统主要包括以下方面的功能:1. 城市选择及路线查询功能用户可选择目的地城市,系统将返回该城市的基本信息,以及从用户当前位置到目的地的交通路线和方案,并提供相应的时间和费用信息。
2. 交通工具查询功能用户可在系统中查询各种交通工具的班次、价格、车次和到达时间等相关信息,以便用户做出最优出行方案。
3. 路况信息查询该系统可实时获取交通状况信息,并展示给用户最新的路况信息。
此外,当用户选择出行方式时,系统可根据实时路况为用户提供最佳出行方案。
4. 预订和购票该系统可为用户提供方便的预订和购票服务。
用户可在线预订和购买机票、火车票和长途汽车票等交通工具,并选择合适的座位和时间。
5. 旅游景点推荐功能该系统可根据用户的出行方案提供适宜的旅游景点推荐。
用户可在系统中了解这些景点的详细信息和交通时间,以便更好地规划自己的行程。
该全国交通咨询系统的实现需要多种数据结构的支持,例如图、树、堆栈、链表、哈希表等。
下面分别讨论每个功能的实现方法和相关数据结构。
1. 城市选择及路线查询功能城市选择及路线查询功能需要通过图的遍历来实现。
图是由顶点和边组成的集合,可以用来表示城市及它们之间的相互关系。
在本系统中,每个城市可以看做一个顶点,每条连接两个城市的路径被视为一条边。
为了实现城市选择及路线查询功能,需要对图进行遍历。
在这个系统中,广度优先搜索算法(BFS)是最佳选择,因为BFS可以给出最近的解决方案。
2. 交通工具查询功能交通工具查询功能需要通过树来实现。
树是由节点和边组成的集合,可以用来表示各种结构化数据。
交通咨询模拟系统课程设计

交通咨询模拟系统课程设计一、课程目标知识目标:1. 让学生掌握交通咨询模拟系统的基本原理和功能。
2. 引导学生了解交通咨询模拟系统在实际生活中的应用。
3. 帮助学生理解并掌握交通流量的数据分析方法。
技能目标:1. 培养学生运用所学知识设计和搭建简单的交通咨询模拟系统的能力。
2. 提高学生分析交通数据,提出合理解决方案的能力。
3. 培养学生团队协作和沟通表达的能力。
情感态度价值观目标:1. 激发学生对交通咨询模拟系统相关领域的兴趣,培养探究精神。
2. 培养学生关注社会交通问题,认识到科技在解决交通问题中的重要性。
3. 引导学生树立正确的价值观,关注交通安全,提高社会责任感。
课程性质:本课程为实践性较强的课程,以项目式教学为主,结合理论讲解和实际操作。
学生特点:学生为初中生,具备一定的信息技术基础,对新鲜事物充满好奇心,喜欢动手实践。
教学要求:教师需关注学生个体差异,提供针对性的指导,鼓励学生积极参与讨论和实践,注重培养学生的学习兴趣和动手能力。
通过本课程的学习,使学生能够将所学知识应用于实际生活中,提高解决实际问题的能力。
二、教学内容1. 交通咨询模拟系统概述- 交通咨询模拟系统的定义与作用- 交通咨询模拟系统的发展与应用2. 交通咨询模拟系统的基本原理- 交通流量的基本概念- 交通流量的数据分析方法- 交通咨询模拟系统的构建原理3. 交通咨询模拟系统的设计与实现- 系统设计的基本流程与方法- 系统实现的工具与技术- 系统测试与优化4. 实践项目:设计一个简单的交通咨询模拟系统- 项目目标与要求- 项目实施步骤与方法- 项目成果展示与评价5. 交通咨询模拟系统在实际生活中的应用案例- 城市交通拥堵解决方案- 公共交通优化- 紧急救援路径规划教学内容安排与进度:第1课时:交通咨询模拟系统概述第2课时:交通咨询模拟系统的基本原理第3课时:交通咨询模拟系统的设计与实现(上)第4课时:交通咨询模拟系统的设计与实现(下)第5课时:实践项目:设计一个简单的交通咨询模拟系统第6课时:交通咨询模拟系统在实际生活中的应用案例教学内容与教材关联性:本教学内容紧密结合教材中关于信息技术应用、数据分析、系统设计等相关章节,确保学生能够学以致用,提高解决实际问题的能力。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
信息学院课程设计题目:交通资询系统姓名:郑伟学号: 201112110138 班级:本科一班课程:数据结构指导教师:杨振2012年12月24日课程设计任务书及成绩评定目录1.目的与要求 (1)1.1设计目的 (1)1.2设计内容 (1)1.3设计思想 (1)1. 4设计要求 (2)2程序流程图 (2)3程序源代码 (3)4编译与运行 (8)5课程总结 (9)1 目的与要求1.1设计目的:掌握图的存储结构;掌握求图的顶点的度及各种邻接结点的操作;掌握迪杰斯特拉算法和弗洛伊德算法。
1.2设计内容:在交通网络非常发达,交通工具和交通方式不断更新的今天,人们在出差、旅游或做其它出行时,不仅关心节省费用,而且对里程和所需时间等问题也感兴趣。
对于这样一个人们关心的问题,可用一个图结构来表示交通网络系统,利用计算机建立一个交通咨询系统。
图中顶点表示城市之间的交通关系。
这个交通系统可以回答旅客提出的各种问题。
比如任意一个城市到其他城市的最短路径,任意两个城市之间的最短路径问题。
本次设计的交通咨询系统主要是运用C语言来完成交通图的存储、图中顶点的单源最短路径和任意一对顶点间的最短路径问题。
设计一个交通咨询系统,能让旅客咨询任一个城市到另一个城市之间的最短里程或最低花费或最少时间等问题。
对于不同咨询要求,可输入城市间的路程或所需费用或所需时间。
该交通咨询系统设计共三部分,一是建立交通网络图的存储结构;二是解决单源路径问题;最后再实现两个城市之间的最短路径问题。
1.3设计思想:用邻接矩阵来存储交通网络图的信息,运用迪杰斯特拉算法实现图上单源最短路径问题,然后运用费洛伊德算法实现图中任意一对顶点间最短路径问题,这样就会实现旅客所要咨询的问题。
1.4设计要求:该交通咨询系统要完成城市网络图的存储,并要实现求任意一个城市顶点到其他城市顶点的最短路径问题,还要实现任意两个城市顶点间的最短路径问题。
故设计要分成三部分,一是建立交通网络图的存储结构;二是解决单源路径问题;最后再实现两个城市之间的最短路径问题。
2程序流程图:3程序源代码:#include<stdio.h>#include<stdlib.h>#define MVNum 100 //最大顶点数#define Maxint 35000enum boolean{FALSE,TRUE};typedef char Vertextype;typedef int Adjmatrix;typedef struct{Vertextype vexs[MVNum]; //顶点数组,类型假定为char型Adjmatrix arcs[MVNum] [MVNum]; // 邻接矩阵,假定为int型} MGraph;int D1[MVNum], p1[MVNum];int D[MVNum][MVNum],p[MVNum][MVNum];//文件名save.cvoid CreateMGraph(MGraph *G,int n,int e){ //采用邻接矩阵表示法构造有向图G,n,e表示图的当前顶点数和边数int i,j,k,w;for(i=1;i<=n;i++) //输入顶点信息G->vexs[i]=(char)i;for(i=1;i<=n;i++)for(j=1;j<=n;j++)G->arcs[i][j]=Maxint; // 初始化邻接矩阵printf ("输入%d条边的i,j及w: \n",e);for(k=1;k<=e;k++){ //读入e条边,建立邻接矩阵scanf("%d,%d,%d",&i,&j,&w);G->arcs[i][j]=w;}printf ("有向图的存储结构建立完毕!\n");}//文件名:dijkstra.c(迪杰斯特拉算法)void Dijkstra(MGraph *G, int v1,int n){ //用Dijkstra算法求有向图G的v1顶点到其他顶点v的最短路径p[v]及其权D[v] //设G是有向图的邻接矩阵,若边<i,j>不存在,则G[i][j]=Maxint//S[v]为真当且仅当v属于S,及以求的从v1到v的最短路径int D2[MVNum], p2[MVNum];int v,i,w,min;enum boolean S[MVNum];for(v=1;v<=n;v++){ // 初始化S和DS[v]=FALSE; //置空最短路径终点集D2[v]=G->arcs[v1][v]; //置初始的最短路径值if(D2[v]< Maxint)p2[v]=v1; //v1是的前趋(双亲)elsep2[v]=0; //v 无前趋} // End_forD2[v1]=0;S[v1]=TRUE; //S集初始时只有源点,源点到源点的距离为0 //开始循环,每次求的V1到某个V顶点的最短路径,并加V到S集中for(i=2;i<n;i++){ //其余n-1个顶点min=Maxint; // 当前所知离v1顶点的最近距离,设初值为∞for(w=1;w<=n;w++) //对所有顶点检查if(!S[w] && D2[w]<min){ //找离v1最近的顶点w,并将其赋给v,距离赋给minv=w; //在S集之外的离v1最近的顶点序号min=D2[w]; //最近的距离} //W顶点距离V1顶点更近S[v]=TRUE; //将v并入S集for(w=1;w<=n;w++) //更新当前最短路径及距离if(!S[w]&&(D2[v]+G->arcs[v][w]<D2[w])){ //修改D2[w]和p2[w],w 属于V-SD2[w]=D2[v]+G->arcs[v][w]; //更新D2[w]p2[w]=v;} //End_if} //End_forprintf ("路径长度路径\n");for(i=1;i<=n;i++){ printf ("%5d", D2[i]);printf ("%5d", i);v=p2[i];while(v!=0) {printf ("<-%d", v);v=p2[v];}printf("\n");}}//文件名floyd.c(费洛伊德算法)void Floyd(MGraph *G, int n){int i, j, k;for(i=1;i<=n;i++) //设置路径长度D和路径path初值for(j=1;j<=n;j++){if(G->arcs[i][j]!=Maxint)p[i][j]=j; //j是i的后继elsep[i][j]=0;D[i][j]=G->arcs[i][j];}for(k=1;k<=n;k++) {{ //做K次迭代,每次均试图将顶点K扩充到当前求得的从i到j的最短路径pij上for(i=1;i<=n;i++)for(j=1;j<=n;j++){ if(D[i][k]+D[k][j]<D[i][j]) {D[i][j]=D[i][k]+D[k][j]; //修改长度p[i][j]=p[i][k];}}}}void main(){ MGraph * G;int n, e, v, w, k;int xz=1;G=(MGraph *)malloc(sizeof(MGraph));printf("输入图中顶点个数和边数n,e: ");scanf("%d,%d", &n, &e);CreateMGraph(G, n, e); //建立图的存储结构while(xz!=0){printf(" 求城市之间的最断路径\n");printf("-------------------------------\n");printf("1.求一个城市到所有城市的最短路径\n");printf("2.求任意的两个城市之间的最短路径\n");printf(” 0.谢谢使用!\n");printf("--------------------------------\n");printf(" 请选择:1 或2,选择0 :退出:");scanf("%d",&xz);if(xz==2){Floyd(G,n); //调用费洛伊德算法printf("输入起点和终点: v,w:");scanf("%d,%d",&v,&w );k=p[v][w]; //k为起点v的后继顶点if(k==0)printf("顶点%d 到%d 无路径! \n",v,w);else{printf("从顶点%d到%d的最短路径是: %d",v,w,v);}while(k!=w){printf("-->%d",k); //输出后继顶点k=p[k][w]; //继续找下一个后继顶点}printf("-->%d",w); // 输出终点wprintf(" 路径长度:%d\n",D[v][w]);}if(xz==1){printf("求单源路径,输入起点v :");scanf("%d", &v);Dijkstra(G,v,n); //调用迪杰斯特拉算法}}printf("结束求最短路径,再见!\n");}4编译及运行:编译: 在第一次编译时出现了很多错误,是因为我对C语言的不熟练,比如调用费洛伊德算法时出现了调用的错误,找了好久,才改正过来,并且最终调试成功!城市交通图:上海7运行结果:五.课程总结通过此次课程设计大大加深了我对数据结构这门课程的理解,而且尤其对图这章的理解,可以说有一个大的进步。
学习能力也大大提高。
当然通过此次课设也为我以后的道路奠定了一定的基础,认识到了基础的重要。
当然此次课设中遇到的困难是再所难免的,因为我面对的课设是图的内容,是一个相对较难的内容,而且最短路径的算法也花了不少时间才有所深刻理解。