学校门口的树C语言算法,C语言校园导游程序设计汇报.doc

C语言校园导游程序设计汇报

《应用程序设计

课程设计》报告

班级:

学号:

姓名:

指导教师:

成绩评定:

目录

题目:

设计一个校园导游程序,为来访的客人提供各种信息查询服务

一.需求分析:

此次课程设计的主要内容是校园导航,为来访的客人提供各种信息查询服务

③学校主要景点的分布④查询任意两个景点之间的最短路径。

⑴对于功能①的输入形式是没什么要求的,主要就是根据菜单的提示输入相应的数字选择相应的功能;对于功能②的输入形式的要求也比较简单,要查询某一景点的简介直接输入其对应的编号即可;对于功能③的输入形式的要求同功能①;对于功能④只需要输入起始景点和目的景点的编号即可。此程序在输入形式上都没什么特殊的要求只是一些简单的数字就可以了。

⑵功能①③就是输出由字符构成的一幅简易图,形式比较单一;景点的简介方面输出景点的简单信息就可以了;要查询最短路径的话输出的是从起始景点到目的地的最短路径中所途经的各个景点及距离。

⑶本程序所能达到的功能就是前面所提到的①—④中的功能。

二.概要设计:

抽象数据类型的定义:

ADT Graph{

数据对象 V:具有相同特性的数组元素的集合,称为顶点集。

数据关系 R:

R={VR}

VR={|v,w∈V且P(v,w), 表示从v到w的弧,谓词P(v,w)定义了弧的意义或信息}

基本操作P:

CreateGraph(&G,V,VR);

初始条件:V是图的顶点集,VR是图中弧的集合。

操作结果:按V和VR的定义构造图G。

DistroyGraph(&G)

初始条件:图G存在

操作结果:销毁图G

LocateVex(G,u);

初始条件:图G存在,u和G中顶点有相同的特征。

操作结果:若存在顶点u,则返回该顶点在图中的位置;否则返回其他信息。

GetVex(G,u);

初始条件:图G存在,u是图中的顶点。

操作结果:返回u的值。

InsertVex(&G,v);

初始条件 :图G存在,v和图中的顶点有相同的特性。

操作结果:在图G中新增顶点v.

InsertArc(&G,v,w);

初始条件:图G存在,v和w是图中的顶点。

操作结果:在图G中增添弧,若是无向图,还增添弧。

}ADT Graph

主程序流程(各函数之间的调用关系):

Main();//主函数

Initview();//景点信息的初始化

InitLength();//各个景点之间距离的初始化

log();//登录时的头部

showmenu();//登录后的菜单

browser();//全景平面图的浏览

browse_view_info();//景点简介的查询

browse_view_distribute();//主要景点的分布

onetoone();//查询任意两个景点之间的最短路径

调用关系如下:(函数内部没什么调用关系)

三.详细设计:

⑴图的结构:

typedef struct view//点的结构

{

int no;//景点编号

char name[100];//景点名称

char briefinfo[1000];//景点简介

}view;

typedef struct edge//边的结构

{

int length;//两个景点之间的距离

char direction[4];//方向

}edge;

⑵伪码算法:

Main()

{path=(edge **)malloc(MAX*sizeof(edge));

for(v=0;v

path[v]=(edge *)malloc(1000*sizeof(edge));

TD=(view *)malloc(MAX*sizeof(view));

D=(DistancMatrix )malloc(MAX*sizeof(DistancMatrix));

P=(PathMatrix )malloc(MAX*sizeof(PathMatrix));

for(v=0;v

Initview(TD);InitLength(path);//初始化

system("mode con: cols=140 lines=130");

log();while(1){

showmenu();//菜单

printf("请选择:\n");

scanf("%d",&k);

switch(k){

case 1: browser();system("cls");break;

case 2: browse_view_info(TD

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/527992.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux 使用ssr客户端_【第一期】基于 @vue/cli3 与 koa 创建 ssr 工程

什么是基于同构代码的 SSR 服务(Server-side rendering based on isomorphic code)首先,我们需要先明白什么是 spa (single page application),以及基于 vue 的 spa 是如何工作的,这里不展开,请参考:单页应用:https://…

试卷8449c 语言,二级C语言上机题库参考答案

1建立班级通讯录 填空&#xff1a;(1)STYPE (2)FILE (3)fp改错(1) for(i0;i<sl;i) (2) t[2*sl]\0编*c(a/10)*1000(b/10)*100(a%10)*10(b%10) 改错&#xff1a; (1) for(i0&#xff0c;t0;p[i];i) (2) c[t]\0;编程&#xff1a; int i&#xff1b;for(i1;i{ If( (ss[i]>a&a…

平板的android版本是5.0.2,EMUI5.0荣耀平板2升级固件下载

荣耀平板2的用户&#xff0c;也能体验EMUI5.0Android7.0的测试资格啦&#xff0c;请大家先申请内测资格&#xff0c;通过后即可获得官方推送的EMUI5.0升级包啦。荣耀平板2 EMUI5.0适配机型&#xff1a;荣耀平板2 WiFi版荣耀平板2 移动/联通双4G荣耀平板2 通话版荣耀平板2 EMUI5…

读保护_混合ASIL系统中不同安全等级模块间的边界保护

01功能安全组件的软件开发针对ISO 26262对功能安全软件研发的要求&#xff0c;AUTOSAR将功能安全需求进行了具体拆分。当前的AUTOSAR规范囊括了诸多功能安全组件软件开发的需求概念。在AUTOSAR系统设计的架构中&#xff0c; 从系统功能设计到ECU功能实现&#xff0c;每个功能特…

android studio javah不是内部或外部命令,Android Studio 环境搭建参考,jdk10javac命令提示不是内部或外部命令...

https://blog.csdn.net/qq_33658730/article/details/78547789 win10下Android Studio和SDK下载、安装和环境变量配置http://yanmin99.com/ android-0基础从入门到精通环境变量ANDROID_HOMEE:\Program Files (x86)\Android\SdkJAVA_HOMEE:\Program Files\Java\jdk1.8.0_161TOMC…

starops 云效运维 文档_阿里云 SAE 携手云效助力「石家庄掌讯」持续交付、降本提效...

背景石家庄掌讯信息技术有限公司创立于2009年&#xff0c;是一家提供企业信息化咨询、创新型软件产品、电商代运营服务&#xff0c;标准化管理、快速发展的高新技术企业。当前公司正处于企业互联网市场突破转型重要阶段&#xff0c;希望将更多精力转移到业务创新&#xff0c;提…

android 6.0 数据库权限,Android超清晰6.0权限申请AndPermission

Android超清晰6.0权限申请AndPermission的具体实现代码&#xff0c;供大家参考&#xff0c;具体内容如下前言这是我经常使用的框架&#xff0c;原因&#xff1a;1.思路清晰2.实现方便开始准备工作导包compile com.yanzhenjie:permission:1.0.7然后就可以使用了&#xff0c;贼简…

setdata改数组里的值 微信小程序_今日艰难笔记redux小程序随记

redux的前身Flux https://zhuanlan.zhihu.com/p/38050036Flux的一整套抽象(action&#xff0c;dispatcher&#xff0c;store)&#xff0c;在单向数据流的基础上可以提高应用的可维护性和代码的可预测性。然而&#xff0c;全局action多store的架构面对复杂的应用依然不能很好地解…

绿盟科技鸿蒙系统,华为 X 绿盟科技,打造“云原生安全新生态”

全文共914字&#xff0c;阅读大约需要2分钟。在数字化转型加速、政策法规密集出台、合规与刚需双轮驱动下&#xff0c;中国网络安全市场实现了快速增长。2020年绿盟科技(300369)实现营业收入20.1亿元&#xff0c;同比增长20.3%&#xff0c;成绩的背后&#xff0c;离不开基于生态…

竞赛数据清洗缺失值_Kaggle 数据清洗挑战 Day 1 - 手把手教你五步处理缺失值

前些天报名参加了 Kaggle 的 Data Cleaning 5天挑战&#xff0c;5天的任务如下&#xff1a;Day 1: Handling missing valuesDay 2: Data scaling and normalizationDay 3: Cleaning and parsing datesDay 4: Fixing encoding errors (no more messed up text fields!)Day 5: Fi…

html5中行内样式写法,react怎么写行内样式?

react怎么写行内样式&#xff1f;下面本篇文章给大家介绍一下react 行内样式几种写法。有一定的参考价值&#xff0c;有需要的朋友可以参考一下&#xff0c;希望对大家有所帮助。react 行内样式几种写法法一这是评论列表组件1法二const title{color:"red",fontSize:3…

程序左上角的字_微信内测7.0.7新版本,小程序迎来大改动!

最近几个月来&#xff0c;微信就跟打了鸡血一样不断更新了多个版本上线多个新功能。此前7月末&#xff0c;微信安卓7.0.6带来了将收藏笔记&#xff0c;文件预览等页面设为浮窗的功能&#xff0c;目前最多支持5个文档或笔记设为浮窗。这不&#xff0c;距离微信7.0.6 for Android…

html 跑步比赛小游戏,疯狂趣味跑步竞赛3D

疯狂趣味跑步竞赛3D是一款跑酷类型的休闲游戏&#xff0c;游戏在整体画面上搭配了最新的技术&#xff0c;使得游戏画面看起来非常华丽&#xff0c;人物的建模也很可爱。玩家在游戏中可以在各种风格的跑道上进行比赛&#xff0c;还可以在线跟别的玩家进行匹配。喜欢这款游戏的快…

得到进程id_搞懂进程组、会话、控制终端关系,才能明白守护进程干嘛的?

守护进程概念&#xff1a;守护进程&#xff0c;也就是通常所说的Daemon进程&#xff0c;是Linux中的后台服务进程。周期性的执行某种任务或等待处理某些发生的事件。Linux系统有很多守护进程&#xff0c;大多数服务都是用守护进程实现的。比如&#xff1a;像我们的tftp&#xf…

gpedit msc组策略面板 win10在哪里_Win10家庭版找不到本地组策略gpedit.msc解决办法...

在Win10的各个版本中&#xff0c;其中家庭版默认是不提供组策略功能的&#xff0c;不提供不是说没有这个功能&#xff0c;而是系统默认对其进行了限制&#xff0c;需要使用该功能可以手动添加&#xff0c;请参考以下步骤&#xff1a;本地组策略编辑器是一个 Microsoft 管理控制…

在计算机管理中创建不同的用户,为什么在计算机管理员里创建密码密码总是不符合要求...

忘记管理员密码怎么办之第一招:删除sam文件对sp3以前的工作组模式windows2000&#xff0c;删除winntsystem32config文件夹下的sam文件(无后缀)之后&#xff0c;本机所有用户丢失&#xff0c;用administrator登录&#xff0c;密码空即可忘记管理员密码怎么办之第二招:O&O软件…

xsslabs靶机解题_web 攻击靶机解题过程

sql注入靶机攻击过程请参考https://pentesterlab.com/exercises/from_sqli_to_shell/coursehttp://www.sohu.com/a/126855490_472906xss靶机的攻击过程请参考https://pentesterlab.com/exercises/xss_and_mysql_file/coursenikto –h 192.168.1.129sqlmap -u "http://192.…

w7计算机的收藏夹里弄出桌面,Win7电脑桌面的便签怎么弄出来?

原标题&#xff1a;Win7电脑桌面的便签怎么弄出来&#xff1f;可能很多人都不知道&#xff0c;作为常用的一款电脑桌面操作系统&#xff0c;Windows 7上除了有Txt记事本和Office办公文档外&#xff0c;还有便笺小工具呢&#xff01;这款便笺小工具虽然很不起眼&#xff0c;但是…

jenkins组权限_JENKINS针对不同项目组对用户进行权限分配-阿里云开发者社区

权限需求因JENKINS上存有de(开发)、te(测试)、re(预发布)等三个不同环境的项目&#xff0c;同时因为项目需求&#xff0c;需要对不同的开发及测试人员配置不同的jenkins权限&#xff0c;即以项目为单位&#xff0c;对不同人员进行不同权限配置&#xff0c;要求如下&#xff1a;…