求用C++编程语言做的“校园导游咨询”课程设计

来源:百度知道 编辑:UC知道 时间:2024/06/01 13:56:36
是要C++语言的
/*校园导游程序*//*[问题描述] 用无向网表示学校的校园景点平面图,图中顶点表示主要景点, 存放景点的编号、名称、简介等信息,图中的边表示景点间的道路,存放路径长度等信息。要求能够回答有关景点介绍、游览路径等问题。 游客通过终端可询问: (1)从某一景点到另一景点的最短路径。 (2)游客从公园进入,选取一条最佳路线。 (3)使游客可以不重复地浏览各景点,最后回到出口(出口就在入口旁边)。 [基本要求] (1)将导游图看作一张带权无向图,顶点表示公园的各个景点,边表示各景点之间的道路, 边上的权值表示距离.为此图选择适当的数据结构。 (2)把各种路径都显示给游客,由游客自己选择浏览路线。 (3)画出景点分布图于屏幕上。 [实现提示] (1)构造一个无向图G并用邻接矩阵来存储。 (2)利用迪杰斯特拉算法来计算出起点到各个顶点之间的最短路径用二维数组p[i][]来记录, 最短路径长度就用一维数组d[i]存放;i的范围:0~20。 (3)一维数组have[]是用来记录最短路径出现顶点的顺序。 (4)根据起点和终点输出最短路径和路径长度。

使用C++语言做的

/*
校园导游咨询
[问题描述]
设计一个校园导游程序,为来访的客人提供各种信息查询服务。
[基本要求]
(1)设计你的学校的校园平面图,所含景点不少于10个。以图中顶点表示校内各景点,存放景点名称、代号、简介等信息;以边表示路径,存放路径长度等相关信息。
(2)为来访客人提供图中任意景点相关信息的查询。
(3)为来访客人提供图中任意景点的问路查询,即查询任意两个景点之间的一条最短的简单路径。
[实现提示]
一般情况下,校园的道路是双向通行的,可设校园平面图是一个无向网。顶点和边均含有相关信息。

一需求分析
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)两景点的最短距离