校园导游咨询完整版
校园导游咨询
一、设计题目[问题描述]设计一个校园导游程序,为来访的客人提供各种信息查询服务。
(1)设计学校的校园平面图,所含景点不少于10个,以图中顶点表示校内各景点,存放景点名称、代号、简介等信息;以边表示路径,存放路径长度等相关信息;(2)提供基本信息的修改功能;(3)为来访客人提供图中任意景点相关信息的查询;(4)为来访客人提供景点的问路查询,即已知一个景点,查询到某景点之间的一条最短路径及长度。
二、需求分析本程序的主要目的是为了提供本学校的景点的路径咨询和来访客人以及刚来报到的新生提供一个快捷方便的路径咨询,快速有效的提高了用户的熟悉度,满足用户查询的需要:1、中原工学院信息商务学院地图,从中选取出13个有代表性的景点。
2、为来访的客人提供图中任意景点相关信息的查询。
当用户输入正确时,为用户输出景点的相关信息;当用户输入不合法时,提示用户输入有误并返回让用户重新输入。
3、为来访的客人和新生提供图中任意景点的路径查询,即查询任意两个景点之间的最短简单路径。
当用户输入正确时,为用户输出任意两景点的最短路径;当用户输入不合法时,提示用户输入有误并返回让用户重新输入。
4、为来访客人和新生推荐参观路线。
三、算法设计1.算法思想抽象数据类型图的定义如下:ADT Graph{ 数据对象V:V是具有相同特性的数据元素的集合,称为顶点集。
数据关系R:R={VR} VR={(v,w)|v,w∈V,(v,w)表示v和w之间存在路径} 基本操作P:CreatGraph70321(&G,V,VR) 初始条件:V是图的顶点集,VR是图中边的集合。
操作结果:按V和VR的定义构造图G。
DestroyGraph70321(&G) 初始条件:图G存在。
操作结果:销毁图G。
LocateVex70321(G,u) 初始条件:图G存在,u和G中顶点有相同特征。
操作结果:若G中存在顶点u,则返回该顶点在图中位置;否则返回其他信息。
校园导游咨询程序设计报告
数据结构课程设计设计题目:校园导游咨询学院:信息学院班级:计算机1008班姓名:学号: 20101221180日期: 2012 年 3 月校园导航问题[问题描述]设计一个校园导游程序,为来访的客人提供各种信息查询服务。
[基本要求](1)设计所在学校的校园平面图,所含景点不少于十个。
以图中顶点表示校内各景点,存放景点名称、代号、简介等信息;以边表示路径,存放路径长度等信息。
(2)为来访客人提供图中任意景点相关信息的查询。
(3)为来访客人提供图中任意景点的问路查询,即查询任意两个顶点之间的一条最短的简单路径。
(4)校园导游图的景点和道路的修改扩充功能。
(5)扩充道路信息,如道路类别(车道、人行道),以致可按客人所需分别查询人行路径或车行路径。
(6)扩充每个景点的林洁景点的方向等信息,使得路径查询结果能提供详尽的导向信息。
(7)实现校园导游的仿真界面。
一、概要设计 (4)二、详细设计 (6)三、调试分析 (12)四、调用关系 (12)五、用户操作指南 (13)[测试数据]一、概要设计1. 数据类型#define V_MAX 20#define E_MAX 200typedef struct {char name[10];//名字//char code[10];//代码char info[20];//信息,简介int x,y;//坐标}VType;//顶点类型typedef struct {int live;//标记是否存在,如果被删除则为0,存在为1 char name[10];// 路名int length;//路的长度char ivex[10],jvex[10];//路(边)连接的两个顶点的名字int type;//表示道路类型,0表示两个都是,1表示人行道,2表示行车道}EdgeType;//边类型typedef struct AdjNode{int length;// 弧的长度char name[10];//关联的顶点的名字struct AdjNode *next;//下一条弧}AdjNode;//弧结点typedef struct {int live;//标记是否存在,如果被删除则为0,存在为1int flag;//标记是否被访问过VType data;//顶点的信息AdjNode *first_adj;//指向该顶点的第一条弧}VNode;//景点(顶点)结点typedef struct {VNode vex[V_MAX];//顶点数组EdgeType edge[E_MAX];//边的数组int v_num,e_num;}Graph;//图类型////////////////////////////////Graph G;AdjNode *p;2.基本函数////////////////////////////////void creatGraph(Graph &G);//创建校园图void load(Graph &G);//从文件中读取数据void save(Graph &G);//保存数据入文件int find_v(Graph G,char name[10]);//通过输入景点名字,返回该景点在vex数组里的下标void print_Graph(Graph G);//以邻接矩阵的形式输出图信息int direction(Graph G,char bname[10],char fname[10]);//用于判断并输出一个景点在另外一个景点的方位信息void search_view(Graph G);//查询并输出景点的所有信息void del_v(Graph &G);//删除景点void add_v(Graph &G);//增加景点void add_e(Graph &G)//增加道路void modify_v(Graph &G);//修改景点信息void del_e(Graph &G);//删除道路二、详细设计本程序由m.cpp、head.h、Menu.h、dijie.h4个文件构成。
【参考文档】校园导游词-范文模板 (3页)
【参考文档】校园导游词-范文模板本文部分内容来自网络,本司不为其真实性负责,如有异议或侵权请及时联系,本司将予以删除!== 本文为word格式,下载后可随意编辑修改! ==校园导游词校园导游词,校园是美好回忆的地方,下面带来校园导游词,欢迎阅读。
校园导游词【1】大家好!我是冰块旅行社的一号导游李欣潼,大家可以叫我小李,我的电话是:010101,如需帮助,请拔打我的电话,今天我们去的地方就是沙面小学,沙面小学面积7066平方米,拥有31个教学班,1190个学生。
好了,到了沙面小学了,别小看那米黄色的大楼,这里面可培育出了许多名人。
好,我们下车吧!小心车门,别撞到头啦,一个一个排队下。
站在大堂,我们看到一块巨大的石碑,那就是我们的校风:百丈再百丈,攀登高峰上。
沙面小学由于成绩突出,前人大副委员长郭沫若还欣然到我校提笔校风,就是因为这样,才有了我们如今这块历史悠久的校风。
沙面小学创始于1947年的春天,解放后的沙面小学一直以其出色的教学成绩名列广州教育的前茅。
请大家上二楼,这里是行政管理区,这里有三个电脑室,同学们在这里学习打字和运用计算机。
好啦,上到三,四,五楼是我们的教室,我们一直以“小班教育”来进行学习。
“小班教育”是沙面近年来的新教学成果。
它可以让每一位同学得到真正意义的全面发展和个性发展,小班教育我们看见了,那现在让我们上六楼参观下吧介绍学校的导游词介绍学校的导游词。
上了天台,这里有可爱的动物园和植物园,雪白的兔子,顽皮的小猴,美丽的孔雀,这些动物都是同学们喂养大的。
植物园里红通通,金灿灿的木瓜。
粉红粉(双休日里作文)红的杜鹃花,也是同学们一手种出来的,看着这些动物和植物,同学们都懂得了“一分耕耘一分收获”这句话啦。
综合实验十二 校园导游咨询
综合实验十二校园导游咨询一、实验目的(1)熟练掌握图的创建及遍历基本操作算法。
(2)熟练掌握最短路径算法。
(3)利用图的遍历和最短路径求解技术,设计一个校园导游程序,为来访的客人提供各种信息查询服务。
二、实验内容【问题描述】设计一个校园导游程序,为来访的客人提供各种信息查询服务。
【基本要求】(1)设计你所在学校的校园平面图,所含景点不少于10个。
以图中顶点表示校内各景点,存放景点名称、代号、简介等信息;以边表示路径,存放路径长度等相关信息。
(2)为来访客人提供图中任意景点相关信息的查询。
(3)为来访客人提供图中任意景点的问路查询,即查询任意两个景点之间的一个最短的简单路径。
【测试数据】由读者根据实际情况指定。
【实现提示】一般情况下,校园的道路是双向通行的,可设校园平面图是一个无向网。
顶点和边均含有相关信息。
【选作内容】(1)求校园图的关节点。
(2)提供图中任意景点问路查询,即求任意两个景点之间的所有路径。
(3)提供校园图中多个景点的最佳访问路线查询,即求途经这多个景点的最佳(短)路径。
(4)校园导游图的景点和道路的修改扩充功能。
(5)扩充道路信息,如道路类别(车道、人行道等)、沿途景色等级,以至可按客人所需分别查询人行路径或车行路径或观景路径等。
(6)扩充每个景点的邻接景点的方向等信息,使得路径查询结果能提供详尽的导向信息。
(7) 实现校园导游图的仿真界面。
程序代码及结果:#include<iostream>#include<iomanip>using namespace std;const int MaxSize=18;const int INFINITY=65535;//最大值无穷class direction;template <class T> class MGraph;template <class T>class VertexNode//定义头结点{friend class MGraph<T>;public:int vex;//顶点名称T vexname;//顶点名称T vexinf;//顶点信息direction dir;//存放顶点方位信息的direction类的dir。
校园导游咨询(最短路径)
typedef struct
{
infotype vexs[MAX_VERTEX_NUM]; //顶点的数据域
AdjMatrix arcs; //邻接矩阵
int vexnum,arcnum; //图的当前顶点数和弧数
}MGraph;
(2)各个函数的声明如下:
void cmd(void);
数据结构课程设计
实验报告
学号:
姓名:
提交日期:
成绩:
东北大学秦皇岛分校
设计题目:校园导游咨询
一、实验目的
(1)熟练掌握图的创建及遍历基本操作算法。
(2)熟练掌握最短路径算法。
(3)利用图的遍历和最短路径求解技术,设计一个校园导游程序,为来访的客人提供各种信息查询服务。
二、需求分析
实验内容
【问题描述】
MGraph InitGraph(void); //初始化图
void Menu(void); //整体菜单
void Browser(MGraph *G); //遍历校园全景
void ShortestPath_DIJ(MGraph * G); //景点所有路线
void Floyd(MGraph *G); //两景点之间最短距离
while(flag)
{
printf("请输入一个起始景点编号:");
scanf("%d",&v0); //输入一个值赋给v0
if(v0<0||v0>G->vexnum)
{
printf("景点编号不存在!请重新输入景点编号:");
scanf("%d",&v0);
《校园导游咨询》实验设计报告
设计题目:___校园导游咨询__一、需求分析及规格说明1、要求:用无向网表示学校的校园景点平面图,所含景点不少于十个。
图中顶点表示主要景点,存放景点的代码和名称等信息,图中的边表示景点间的道路,存放路径长度等信息。
设计一个校园导游程序,为来访的客人提供各种信息查询服务。
a)简易菜单管理,界面友好。
b)对城市信息(城市名、城市间的里程)进行录入和编辑(可选);c)为来访客人提供图中任意景点的问路查询,即查询任意两个景点之间的一条最短的简单路径,给出相应的距离。
d)对于任意两个景点之间的一条最短的简单路径,给出所经过景点的信息和距离。
对景点采用相应的字符选择。
2、功能:修改及查询校园各景点的信息3、测试数据:a)请输入出发景点:A 鲁迅像请输入到达景点:F 图书馆b)请输入出发景点:B 音乐楼请输入到达景点:H 体育馆二、概要设计1、数据存储结构:一个结构体数组存放各景点名及其编号;一个二维数组存放两景点间的距离;一个栈结构,存储最短路径所经过的各个点;以及多个辅助数组;2、算法思想:1)使用菜单页,选择不同的功能(修改距离、求最短路径、退出等),进行相应的操作;2)采用邻接矩阵作为数据的存储结构,打表,确定位置,修改距离值;3)利用Dijkstra算法,求两地间的距离,并输出其路径;4)主程序有简易菜单,选择功能模块执行,在程序运行过程中可以反复操作。
3、子函数:void init() //初始化各景点的名称、编号及两地已知距离等信息void list(int pos) //以表格的形式打印邻接矩阵string chto_string(char a) //将景点的编号转换为名称,返回void alter(int x,int y,int dist) //修改相应位置上的距离信息void Dijkstra(int s,int t) //求两点间的最短距离void output(int s,int t) //输出最短距离的路径bool menu(int step) //根据不同的操作序号,实现各自的功能4、主函数:int main(){//初始化景点的各个信息;//显示菜单页,提供修改信息、查最短路径的功能//根据键入的信息,进行相应的操作}三、详细设计1、数据类型:全局变量:int mat[10][10](两点距离) ,p[10](路径前去节点) ,dst[10](到起点的距离);const int MAX=INT_MAX/2(最大值); bool visited[10](结点是否访问过);stack<int> path(存放最短距离的路径);struct liocation // 存放景点的名称及编号信息{ char syb;string name;}school[10];2、基本操作:void init() //初始化各景点的名称、编号及两地已知距离等信息school[],mat[][];void list(int pos) //根据不同的pos,打印对应的表头,及其距离信息,表格的形式;若不连通则不输出string chto_string(char a) //根据给出的编号,搜索其对应的景点名称void alter(int x,int y,int dist) //修改相应位置上的距离信息,mat[x][y]=distvoid Dijkstra(int s,int t) //求两点间的最短距离{//初始化各个景点到起点的距离dst[]=mat[][],到起点的起始距离;//置起点的visited[]为true,即访问过;//循环进行9次以下操作:调整当前点与起点的距离,并记录其前驱点p[];}void output(int s,int t) //输出路径{//将记录下的路径p[],按顺序导入在栈中;(将其逆序)//逐个弹出栈中的元素,输出对应的路径信息,包括起点、中间点、距离;//输出全程最短行程的距离}bool menu(int step) // 菜单内容{//如果输入的操作序号有误,则提示,返回主菜单;//清屏;if(1修改功能){//打印表格,及对应的提示语句;//读取两个景点序号及两地的新距离;//覆盖原来的距离;//不再修改,则返回主菜单;//return true;}else if(求最短路径功能){//打印表格,及对应的提示语句;//读取正确的起点、终点编号,若不正确则提示,返回重新输入;//调用chto_string(char a),在编号旁,显示其对应的景点名称;//调用void Dijkstra(int s,int t),求最短路径;//调用void output(int s,int t) 输出对应的路径信息;//return true;}if(退出) return false;}int main(){//调用init(),初始化;//显示主菜单内容;//读取操作序号;//调用bool menu(int step),进行相应的功能;//if(menu的结果为false)则退出程序,否则重复进行;}四、调试分析1、打印表格的时候,输出有部分出现乱码。
校园导游咨询讲解
《算法与数据结构》课程设计报告班级:专业级班姓名:学号:课程设计题目:校园导游咨询所属课程:算法与数据结构实验室(中心):指导教师:完成时间:年月日学院信息科学与工程学院课程设计任务书信息科学与工程学院课程设计成绩单指导教师:A课程设计课程名称:算法与数据结构性别男班级学号姓名指导教师算法与数据结构班级课程A2201完成时校园导游咨 201主介绍校园的景点,同时提供任意两点之间最短的路径内.封面.课程设计成绩单、课程设计任务.内容提要.“课程设计报告”正文部分主要应包括①问题分析和任务定义②环境简介③设计:主要是指数据结构与核心算法的设计描述;操作界设的设计;主要功能的算法框架;测试用例设计等内容(要求使报C+)要④编译参数与步骤的说明⑤上机调试总结与分析⑥用户使用说明⑦测试数据与测试结果等内容⑧课程设计总结:可以包括课程设计过程的收获、遇到的问及解决过程的思考、对数据结构这门课程的思考和认识等内容⑨附录程序清.参考文1题目用黑体三号,段后1磅(行),居中对齐2标题用黑体四号,段前、段后磅(0.版行)3正文用小四号宋体,行距1.2倍行距要4标题按“一”、“㈠”、“1”、“⑴”顺序编号星周指11-时1-安11-5-指专业实验406/40地点综合成绩□能正确运行□基本能正确运行□能运行但结果不完善程序运行情况15分)((10分)分)(20(占总成绩20%)□不完善□基本完善□完善程序功能完善程度分)(5(8分)(分)10)10%(占总成绩□不太合理□基本合理程序结构的合理性□合理5分)(8分)()(占总成绩10%分)(10□基本能正确回答□概念正确有创新□能正确回答所有问题30(分)40(分)(35分)对问题的答辩情况□部分问题回答概念不清晰40%(占总成绩)(20分)□工作态度认真能独立完成任务□工作态度认真但独立性较差学生的工作态度与(10分)(分)8独立工作能力□工作态度基本认真但缺乏独立性(占总成绩10%)(5分)□规范性较差□符合规范□基本符合规范设计报告的规范性(5分)10分)(8(分))10%(占总成绩.摘要数据结构课程设计对于训练学生掌握程序设计技术、使学生进一步理解和掌握课堂上所学各种基本抽象数据类型的逻辑结构、存储结构和操作实现算法,以及它们在程序中的使用方法。
校园导游咨询
不过也通过这次课程设计,让我明白现实生活跟程序之间联系,同时也让我明白了数据结构这门课程的重要性,我以后会继续努力学习这门课程。
(1)建立模型(逻辑结构)
(2)建立模块之间的关系(存储结构)
(3)算法
四、源程序清单
五、测试结果
六、课程设计总结及心得体会
实验题目:校园导游咨询
一、课程目的
为用户提供路径咨询和景点查询,根据用户指定的始点和终点输出相应路径或者根据用户指定的景点输出景点的信息。
二、基本要求
(1)设计校园平面图,在校园景点选10个左右景点。以图中顶点表示校园内各景点,存放景点名称、代号、简介等信息;以边表示路径,存放路径长度等有关信息。
printf(" 8:篮球场\n");
printf(" 9:足球场\n");
printf(" 10:食堂\n");
printf("请选择服务:");
scanf("\n%c",&k);
switch(k)
{
case 'i':
printf("进入景点信息查询:");
introduce();
break;
case 's':
scanf("%d",&a);
printf("\n");
switch(a)
{
case 1:
printf("1:学校大门\n\n学校的正门,气势宏伟。\n\n");break;
校园导游咨询程序
实验三:校园导游咨询一、设计方案简介设计一个校园导游程序,为来访的客人提供各种信息查询服务。
1)设计你所在学校的校园平面图,2)为来访客人提供图中任意景点相关信息的查询。
3)为来访客人提供图中任意景点的问路查询,即查询任意两个景点之间的一条最短的简单路径。
二、设计题目实现:实际需求1)设计你所在学校的校园平面图,所含景点不少于10个。
以图中顶点表示校园内各景点,存放景点名称、代号、简介等信息:以边表示路径,存放路径长度等相关信息。
2)为来访客人提供图中任意景点相关信息的查询。
3)为来访客人提供图中任意景点的问路查询,即查询任意两个景点之间的一条最短的简单路径。
2)概要设计1、校园全景一览图、显示出校园的平面图。
2、提供校园中任意景点问路查询,即求任意两个景点之间的所有路径。
3、提供校园图中多个景点的最佳访问路线查询,即求途径这过个景点的最佳(短)路径。
1.功能模块图;void Map();//校园地图void CreateGraph();//创建图void OutputPlace();//输出景点列表void SearchPlace();//查询景点信息void SearchPath();//查询最短路径void Shortpath(int i);//计算最短路径void Output(int sight1,int sight2);//输出函数2.各个模块详细的功能描述。
Map();//显示校园整体的地图、包含学校各景点的详细位置CreateGraph();//创建图、主要用来保存各景点信息OutputPlace();//输出景点列表、供选择景点信息查询时使用SearchPlace();//查询景点信息、景点的名称及介绍SearchPath();//查询最短路径、两景点间最短距离Shortpath(int i);//计算两景点间最短路径Output(int sight1,int sight2);//输出两景点最短路径及信息四.详细设计1.功能函数的调用关系图2.各功能函数的数据流程图全局变量Graph G;int path[NUM][NUM];int D[NUM];3.重点设计及编码重点设计:求最短路径编码:void Shortpath(int num)//迪杰斯特拉算法最短路径{int v,w,i,t;//i、w和v为计数变量//t表示景点个数int final[NUM]; //标志数组、用来存放顶点的信息int min;//记录权值、最终输出路径for(v=0;v<NUM;v++){final[v]=0; //假设从顶点num到顶点v没有最短路径D[v]=G.arc[num][v].length;//将num到其余顶点的最短路径长度初始化为权值for(w=0;w<NUM;w++)path[v][w]=0;//初始化从v到w的路径值if(D[v]<MAX) //存在路径{path[v][num]=1; //存在标志置为一path[v][v]=1; //自身到自身}}D[num]=0;//初始化新路径final[num]=1; //初始化num顶点属于final集合//开始主循环,每一次求得num到某个顶点的最短路径,并将其加入到final集合for(i=0;i<NUM;++i) // 其余G.vexnum-1个顶点{min=MAX; //当前所知离顶点num的最近距离for(w=0;w<NUM;++w)if(!final[w]) //w顶点在v-s中if(D[w]<min) //w顶点离num顶点更近{v=w;min=D[w];}final[v]=1; //离num顶点更近的v加入到s集合for(w=0;w<NUM;++w) //更新当前最短路径极其距离if(!final[w]&&((min+G.arc[v][w].length)<D[w]))//不在s集合,并且比以前所找到的路径都短就更新当前路径{D[w]=min+G.arc[v][w].length;//更新路径for(t=0;t<NUM;t++)path[w][t]=path[v][t];path[w][w]=1;}}}void Output(int sight1,int sight2) // 输出函数{int a,b,c,d,q=0;//a、b、c和d为计数变量//q控制计数变量、用于换行a=sight2; //将景点二赋值给aif(a!=sight1) // 如果景点二不和景点一输入重合,则进行...{printf("\t\t\t\t\t\t从%s到%s的最短路径是:\n\n\t\t\t\t\t",G.vertex[sight1].name,G.vertex[sight2].name);//输出提示信息//输出sight1到sight2的最短路径长度,存放在D[]数组中printf("\t%s",G.vertex[sight1].name); //输出景点一的名称d=sight1; //将景点一的编号赋值给dfor(c=0;c<NUM;++c){gate:; //标号,可以作为goto语句跳转的位置path[a][sight1]=0;for(b=0;b<NUM;b++){if(G.arc[d][b].length<MAX&&path[a][b]) //如果景点一和它的一个临界点之间存在路径且最短路径{printf("--->%s",G.vertex[b].name); //输出此节点的名称q=q+1; //计数变量加一,满8控制输出时的换行path[a][b]=0;d=b; //将b作为出发点进行下一次循环输出,如此反复if(q%14==0) printf("\n");goto gate;}}}printf("\n\n\t\t\t\t\t\t最短距离为%dm.\n\n\t",D[a]);}}五.测试数据及运行结果系统主界面学校平面图学校景点图最短路径信息查询异常信息三、设计评述:设计者对本设计的评述及通过设计的收获体会1.改进方案系统还有部分漏洞未能修复、不够绝对的稳定、还需改进!求最短路径时可以采用比较简单的哈密尔顿算法。
课程设计校园导游咨询
课程设计校园导游咨询一、教学目标本课程旨在让学生了解和掌握校园导游的基本知识,包括校园的历史、文化、建筑、景观等方面的内容。
通过本课程的学习,使学生能够熟练运用所学的知识,为游客提供专业的校园导游服务。
具体目标如下:1.知识目标:学生能够掌握校园的基本历史、文化、建筑和景观知识,了解校园的发展历程和特色。
2.技能目标:学生能够运用所学的知识,进行校园导游的讲解和服务,具备良好的沟通和应变能力。
3.情感态度价值观目标:学生能够培养对校园文化的认同感,增强爱护校园环境的责任心,提高服务他人的意识。
二、教学内容本课程的教学内容主要包括以下几个方面:1.校园历史:介绍校园的创建背景、发展历程和重要事件。
2.校园文化:阐述校园的文化传统、校训、校风等核心价值观。
3.校园建筑:解析校园主要建筑的风格、特点和背后的故事。
4.校园景观:介绍校园内的风景名胜、历史遗迹和生态景观。
5.导游技巧:教授导游的基本礼仪、沟通技巧、应急处理等实际操作能力。
三、教学方法为了提高教学效果,本课程将采用多种教学方法相结合的方式进行:1.讲授法:教师讲解校园历史、文化、建筑和景观等方面的知识。
2.讨论法:学生分组讨论校园导游的实际案例,分享心得体会。
3.案例分析法:分析校园导游的成功案例和存在的问题,提高学生的判断和分析能力。
4.实验法:学生进行校园导游的实践活动,锻炼学生的实际操作能力。
四、教学资源为了支持教学内容和教学方法的实施,我们将准备以下教学资源:1.教材:选用权威、实用的校园导游教材,为学生提供系统的理论知识。
2.参考书:提供相关的历史、文化、建筑等领域的参考书籍,丰富学生的知识储备。
3.多媒体资料:制作精美的课件、视频等多媒体资料,增强课堂教学的趣味性和生动性。
4.实验设备:配备必要的实验设备,如地图、模型等,帮助学生更好地理解校园景观。
5.实践活动:学生进行校园导游的实际操作,提高学生的实践能力。
五、教学评估为了全面、客观地评估学生的学习成果,本课程将采用多种评估方式相结合的方法:1.平时表现:评估学生在课堂上的参与度、发言积极性以及团队合作表现等。
校园导游咨询讲解
MGr.legs[9][10]=MGr.legs[10][9]=50;
、弗洛伊德算法folyd()函数
用弗洛伊德算法求两节点之间最短的路径,具体算法为:在两节点之间
如->num=1;
strcpy(p->,"南大门");
strcpy(p->date.number,"1");
strcpy(p->date.introduce,"学校的大门,很有特色的拱桥型的大门,十分的霸
");
p->next=q->next;
MGr.legs[1][3]=MGr.legs[3][1]=15;
MGr.legs[1][4]=MGr.legs[4][1]=20;
MGr.legs[2][8]=MGr.legs[8][2]=80;
MGr.legs[3][5]=MGr.legs[5][3]=20;
MGr.legs[3][6]=MGr.legs[6][3]=15;
q->next=p;
q=p;
p=(Place *)malloc(sizeof(Place));
p->num=2;
strcpy(p->,"李子湖");
strcpy(p->date.number,"2");
strcpy(p->date.introduce,"学校最有风景的地方,是情侣晚上最喜欢去的地方!
q->next=p;
q=p;
p=(Place *)malloc(sizeof(Place));
学校导游咨询问题
【问题描述】设计一个校园导游程序,为来访的客人提供各种信息查询服务。
【基本要求】(1)设计你所在学校的校园平面图,所含景点不少于10个。
以图中顶点表示校园内各景点,存放景点名称、代号、简介等信息:以边表示路径,存放路径长度等相关信息。
(2)为来访客人提供图中任意景点相关信息的查询。
(3)为来访客人提供图中任意景点的问路查询,即查询任意两个景点之间的一条最短的简单路径。
【测试数据】根据实际情况自定。
【实现提示】一般情况下,校园的道路是双向通行的,可设校园平面图是一个无向网。
顶点和边均含有相关信息。
程序设计课程设计报告专业:计算机科学与技术班级:08—01 姓名:赵冬学号:2008101000 完成日期:题目:编制一个为来访客人提供信息查询的程序。
一.需求分析1、从学校平面图中选取10个大家熟悉的景点,抽象成一个无向带权图(如图所示)。
以图中顶点表示景点,边上的权值表示两地的距离。
2、本程序的目的是为用户提供路径咨询和景点查询。
根据用户指定的始点和终点输出相应路径或者根据用户指定的景点输出景点的信息。
二.概要设计1、本文采用的数据结构*//*包含头文件*/#include<stdio.h>#include<process.h>/*定义符号常量*/#define INT_MAX 10000#define n 10/*定义全局变量*/int cost[n][n];/* 边的值*/int shortest[n][n];/* 两点间的最短距离*/int path[n][n];/* 经过的景点*//*自定义函数原型说明*/void introduce();int shortestdistance();void floyed();void display(int i,int j);2个人分工(1)景点信息查询(2)两景点的最短距离(3)两个景点之间的路径三.详细设计void main(){/*主函数*/int i,j;char k;for(i=0;i<=n;i++)for(j=0;j<=n;j++)cost[i][j]=INT_MAX;cost[1][3]=cost[3][1]=2;cost[2][3]=cost[3][2]=1;cost[2][4]=cost[4][2]=2;cost[3][10]=cost[10][3]=4;cost[1][10]=cost[10][1]=4;cost[2][10]=cost[10][2]=4;cost[4][10]=cost[10][4]=4;cost[1][4]=cost[4][1]=5;cost[4][5]=cost[5][4]=3;cost[4][9]=cost[9][4]=4;cost[5][9]=cost[9][5]=8;cost[5][7]=cost[7][5]=4;cost[5][6]=cost[6][5]=2;cost[6][7]=cost[7][6]=1;cost[7][8]=cost[8][7]=3;cost[8][6]=cost[6][8]=4;cost[1][1]=cost[2][2]=cost[3][3]=cost[4][4]=cost[5][5]=0;cost[6][6]=cost[7][7]=cost[8][8]=cost[9][9]=cost[10][10]=0;while(1){printf("----------------欢迎使用校园导游系统!----------------\n"); printf("1.景点信息查询………请按 i (introduc)键\n");printf("2.景点最短路径查询…请按 s (shortestdistance)键\n"); printf("3.退出系统……………请按 e (exit)键\n");printf("学校景点列表:\n");printf("1:学校南门 ");printf("2:学生公寓 ");printf("3:机械学院 ");printf("4:餐厅 ");printf("5:体育馆\n");printf("6:图书馆 ");printf("7:实验大楼 ");printf("8:主楼 ");printf("9:智林超市 ");printf("10:国防生公寓\n");printf("请选择服务:");scanf("\n%c",&k);switch(k){case 'i':printf("进入景点信息查询:");introduce();break;case 's':printf("进入最短路径查询:");shortestdistance();break;case 'e':exit(0);default:printf("输入信息错误!\n请输入字母i或s或e.\n"); break;}}}/*main*/void introduce(){/*景点介绍*/int a;printf("您想查询哪个景点的详细信息?请输入景点编号:");scanf("%d",&a);getchar();printf("\n");switch(a){case 1:printf("1:学校南门\n\n");break;case 2:printf("2:学生公寓集中的地方。
校园导游咨询课程设计-推荐下载
2012年 01 月
对全部高中资料试卷电气设备,在安装过程中以及安装结束后进行高中资料试卷调整试验;通电检查所有设备高中资料电试力卷保相护互装作置用调与试相技互术通关,1系电过,力管根保线据护敷生高设产中技工资术艺料0不高试仅中卷可资配以料置解试技决卷术吊要是顶求指层,机配对组置电在不气进规设行范备继高进电中行保资空护料载高试与中卷带资问负料题荷试2下卷2,高总而中体且资配可料置保试时障卷,各调需类控要管试在路验最习;大题对限到设度位备内。进来在行确管调保路整机敷使组设其高过在中程正资1常料中工试,况卷要下安加与全强过,看度并22工且22作尽22下可22都能22可地护以缩1关正小于常故管工障路作高高;中中对资资于料料继试试电卷卷保破连护坏接进范管行围口整,处核或理对者高定对中值某资,些料审异试核常卷与高弯校中扁对资度图料固纸试定,卷盒编工位写况置复进.杂行保设自护备动层与处防装理腐置,跨高尤接中其地资要线料避弯试免曲卷错半调误径试高标方中高案资等,料,编试要5写、卷求重电保技要气护术设设装交备备置底4高调、动。中试电作管资高气,线料中课并敷3试资件且、设卷料中拒管技试试调绝路术验卷试动敷中方技作设包案术,技含以来术线及避槽系免、统不管启必架动要等方高多案中项;资方对料式整试,套卷为启突解动然决过停高程机中中。语高因文中此电资,气料电课试力件卷高中电中管气资壁设料薄备试、进卷接行保口调护不试装严工置等作调问并试题且技,进术合行,理过要利关求用运电管行力线高保敷中护设资装技料置术试做。卷到线技准缆术确敷指灵设导活原。。则对对:于于在调差分试动线过保盒程护处中装,高置当中高不资中同料资电试料压卷试回技卷路术调交问试叉题技时,术,作是应为指采调发用试电金人机属员一隔,变板需压进要器行在组隔事在开前发处掌生理握内;图部同纸故一资障线料时槽、,内设需,备要强制进电造行回厂外路家部须出电同具源时高高切中中断资资习料料题试试电卷卷源试切,验除线报从缆告而敷与采设相用完关高毕技中,术资要资料进料试行,卷检并主查且要和了保检解护测现装处场置理设。备高中资料试卷布置情况与有关高中资料试卷电气系统接线等情况,然后根据规范与规程规定,制定设备调试高中资料试卷方案。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(2)建立模块之间的关系(存储结构)
(3)算法
四、源程序清单
五、测试结果
六、课程设计总结及心得体会
实验题目:校园导游咨询
一、课程目的
为用户提供路径咨询和景点查询,根据用户指定的始点和终点输出相应路径或者根据用户指定的景点输出景点的信息。
二、基本要求
(1)设计校园平面图,在校园景点选10个左右景点。以图中顶点表示校园内各景点,存放景点名称、代号、简介等信息;以边表示路径,存放路径长度等有关信息。
int a,b;
a=i;
b=j;
printf("您要查询的两景点间最短路径是:\n\n");
if(shortest[i][j]!=INT_MAX)
{
if(i<j)
{
printf("%d",b);
while(path[i][j]!=0)
{
printf("<-%d",path[i][j]);
if(i<j)
按照要求分为三个模块,图的信息的初始化,图各个景点信息的查询和景点间的最短路径查询功能
void introduce() //用来查询各景点的相关信息
int shortestdistance()//用来查询任意两个景点之间的最短路径和经过的景点
void floyed()//用来计算任意两个景点之间的最短路径
void display(int i,int j)//用来显示任意景点之间的最短路径和经过的景点
/*包含头文件*/
#include<string>
/*定义符号常量*/
#define INT_MAX 10000
#define n 10
/*定义全局变量*/
int cost[n][n];/* 边的值*/
int shortest[n][n];/* 两点间的最短距离*/
printf("进入最短路径查询:");
shortestdistance();
break;
case 'e':
exit(0);
default:
printf("输入信息错误!\n请输入字母i或s或e.\n");
break;
}
}
}
}
void introduce()
{
int a;
printf("您想查询哪个景点的详细信息?请输入景点编号:");
cost[1][1]=cost[2][2]=cost[3][3]=cost[4][4]=cost[5][5]=0;
cost[6][6]=cost[7][7]=cost[8][8]=cost[9][9]=cost[10][10]=0;
while(1)
{
printf("----------------欢迎使用校园导游系统!----------------\n");
#define n 10
int cost[n][n];
int shortest[n][n];
int path[n][n];
void introduce();
int shortestdistance();
void floyed();
void display(int i,int j);
void main()
if(shortest[i][j]>(shortest[i][k]+shortest[k][j]))
{
shortest[i][j]=shortesj]=k;
path[j][i]=k;
}
}
void display(int i,int j)
{
}
void floyed()
{
int i,j,k;
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
{
shortest[i][j]=cost[i][j];
path[i][j]=0;
}
for(k=1;k<=n;k++)
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
{
int i,j,q;
char k;
printf("\t----------------欢迎来到湖北师范学院----------------\n\n");
printf("\t---按1进入校园导游指示系统,否则请再次输入---\n");
PR:printf("\t ---------------请输入你的选择----------------\n\t");
j=path[i][j];
else
i=path[j][i];
}
printf("<-%d",a);
printf("\n\n");
printf("(%d->%d)最短距离是:%d米\n\n",a,b,shortest[a][b]);
}
else
{
printf("%d",a);
while(path[i][j]!=0)
校园导游咨询
HUBEINORMALUNIVERSITY
课程设计论文
Course’s Thesis
课程名称数据结构
专业通信工程
班级0803班
学生蔡兵
学号01
设计题目校园导游咨询
指导教师孙玉霞老师
时间2011年3月22日
年度2011年第二学期
一、课程目的
二、基本要求
三、实验内容及步骤
1、概要设计
2、详细设计
printf(" -----------------湖北师范学院--------------------\n");
printf("1.景点信息查询………请按 i (introduc)键\n");
printf("2.景点最短路径查询…请按 s (shortestdistance)键\n");
printf("3.退出系统……………请按 e (exit)键\n");
if(shortest[i][j]>(shortest[i][k]+shortest[k][j]))
{
shortest[i][j]=shortest[i][k]+shortest[k][j];
path[i][j]=k;
path[j][i]=k;
}
}
四、源程序清单
#include <string>
#define INT_MAX 10000
default:
printf("景点编号输入错误!请输入1->10的数字编号!\n\n"); break;
}
}
int shortestdistance()
{
int i,j;
printf("请输入要查询的两个景点的编号(1->10的数字编号并用','间隔):");
scanf("%d,%d",&i,&j);
{
printf("->%d",path[i][j]);
if(i<j)
j=path[i][j];
else
i=path[j][i];
}
printf("->%d",b);
printf("\n\n");
printf("(%d->%d)最短距离是:%5d米\n\n",a,b,shortest[a][b]);
(2)为来访客人提供图中任意景点相关信息的查询。
(3)为来访客人提供任意景点的问路查询,即查询任意两个景点之间的一条最短路径。
附加要求:a、界面友好,函数功能要划分好
b、总体设计应画一流程图
c、程序要加必要的注释
d、要提供程序测试方案
三、实验内容及步骤
1、概要设计:
在设计这个校园导游系统前考虑到整个信息的结点和操作,可以通过邻接矩阵借助图的相关知识来完成。
case 4:
printf("4:科教大厦\n\n 全校学生公共教学楼。\n\n");break;
case 5:
printf("5:实验楼\n\n 计算机机房及各种实验设施。\n\n");break;
case 6:
printf("6:外语楼\n\n 外国文化交流中心。\n\n");break;
case 7:
scanf("%d",&a);
printf("\n");
switch(a)
{
case 1:
printf("1:学校大门\n\n 学校的正门,气势宏伟。\n\n");break;
case 2:
printf("2:图书馆\n\n 学校信息资源中心。\n\n");break;
case 3:
printf("3:教育大楼\n\n 学生自学自修的天堂。\n\n");break;
Floyd具体算法设计
void floyed()
{
int i,j,k;
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)