面向对象的大型测控软件设计-校园导航系统设计.doc

面向对象的大型测控软件设计-校园导航系统设计.doc

  1. 1、本文档共36页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
面向对象的大型测控软件设计作业姓名: 学 生 姓 名 : 学 生 学 号 : 摘要旨在实现目录 1 第一章 开发环境和开发工具 1 1.1 C/ C ++语言简介 1 1.2 应用背景 1 1.3 开发环境 1 第二章 算法思想 2 2.1 系统需求分析 2 2.2 系统总体设计 3 2.2.1 系统设计目标 3 2.2.2 开发设计思想 3 2.2.3 系统功能模块设计 3 2.3 算法思想描述 4 第三章 算法实现 6 3.1 数据结构 6 3.2 程序模块 6 3.3 各模块之间的调用关系 13 3.4 源程序代码 13 第四章 测试与分析 25 4.1 测试软件 25 4.2 测试结果分析 31 总结报告 32 开发环境和开发工具 C/ C ++语言简介 C语言是一种计算机程序设计语言。它既具有高级语言的特点,又具有的特点。它由美国贝尔研究所的D.M.Ritchie于1972年推出。1978后,C语言已先后被移植到大、中、小及微型机上。它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。它的应用范围广泛,具备很强的数据处理能力,不仅仅是在软件开发上,而且各类科研都需要用到C语言,适于编写系统软件,三维,二维图形和动画。具体应用比如单片机以及嵌入式系统开发。C++是一种静态数据类型检查的、支持多重编程范式的通用程序设计语言。它支持过程化程序设计、数据抽象、面向对象程序设计、制作图标等等程序设计等多种程序设计风格。Creatgraph(G,V,VR) 初始条件:V是图的顶点集,VR是图中边的集合。 操作结果:按V和VR的定义构造图G。 Output(G) 初始条件:图G已经存在。 操作结果:打印出图的信息 ShortestPath(G,v) 初始条件:图G已存在,v是图中的一个顶点。 操作结果:返回从v出发到图中任意顶点的最短的路径。 }ADT graph; 2.2 系统总体设计 2.2.1 系统设计目标 本文研究开发的校园导航系统用于支持来往校园参观的客人提供最省时的导航服务,有如下三个方面的目标: 1、为来往的客人提供校园的简介。 2、为来往的客人提供校园中各景点的简介,以及各景点的距离等情况。 3、为来往的客人提供到达目的地的最短的路线。 2.2.2 开发设计思想 基于以上系统设计目标,本文在开发校园导航系统时遵循了以下开发设计思想: 1、采用现有的软硬件环境及先进的管理系统开发方案,从而达到充分利用现有资源,提高系统开发水平和应用效果的目的。 2、尽量达到操作过程中的直观、方便、实用、安全等要求。 3、系统采用模块化程序设计方法,既便于系统功能的各种组合和修改,又便于未参与开发的技术维护人员补充、维护。 2.2.3 系统功能模块设计 本系统分为四个模块:菜单模块、景点介绍模块、路径查询模块、最短路径模块。得到如图3-1所示的系统功能模块图。 图3-1系统功能模块图 2.3 算法思想描述 1、迪杰斯特拉算法思想: 按路径长度递增次序产生算法:   把V分成两组:   (1)S:已求出最短路径的顶点的集合   (2)V-S=T:尚未确定最短路径的顶点集合   将T中顶点按最短路径递增的次序加入到S中,   保证:(1)从源点V0到S中各顶点的最短路径长度都不大于   从V0到T中任何顶点的最短路径长度   (2)每个顶点对应一个距离值   S中顶点:从V0到此顶点的最短路径长度   T中顶点:从V0到此顶点的只包括S中顶点作中间   顶点的最短路径长度   依据:可以证明V0到T中顶点Vk的最短路径,或是从V0到Vk的   直接路径的权值;或是从V0经S中顶点到Vk的路径权值之和#define Max 32767//最大值∞ #define NUM 11//最大顶点个数 typedef struct ArcCell{ int adj; // 相邻接的景点之间的路程 char *info; }ArcCell; // 定义边的类型 typedef struct VertexType{ int number; // 景点编号 char *sight; // 景点名称 char *description; // 景点描述 }VertexType; // 定义顶点的类型 typedef struct{ VertexType vex[NUM];

文档评论(0)

希望之星 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档