栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

C语言实现旅游景点咨询系统

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

C语言实现旅游景点咨询系统

C语言课程设计之旅游景点咨询系统

1.问题描述:创建一个至少有15个点的有向网表示的某个旅游景点的导游图。顶点代表景点,类型为字符串(例如,泰山导游图:“天地广场门”,“十八盘”,“冯玉祥墓”,“桃花峪门”,“中天门”,“南天门”,“玉皇顶”等),弧表示两个景点之间可以直达,弧上的权值表示两个景点之间的路程(公里数),弧上还有到达方法的信息(有步行和索道两种)。建立一个游客咨询系统。

2.基本要求

(1)创建图的存储结构。
(2)输入两个景点名,就可以得到从一个景点到达另一个景点的所有简单路径、相应路径的路程公里数、行走的方法(每一段是步行,还是坐索道);
(3)输入两个景点名,就可以得到其最短路径,即:路程最短的行进方法;如果两者无路径可通,就得出“两景点不可达的信息”。
(4)按照题意要求独立进行设计,设计结束后按要求写出设计报告。

一、代码块:

#include

using namespace std;
const int MAXVEX=50;
const int INF=0x3fffffff;
//s表示索道 w表示步行

typedef struct{//边的结构
 int wei;//权值
 char way;//到达方式
}EdgeType;

typedef struct{
 string vexs[MAXVEX];//顶点信息,string类型
 EdgeType arc[MAXVEX][MAXVEX];//边的信息
 int numVertexes,numEdges;//顶点数和边数
}MGraph;

void CreateMGraph(MGraph *G)
{
 FILE *fp;
 fp=fopen("read.txt","r");
 int i,j,k,w;
 cout<<"请输入顶点数和边数"<>G->numVertexes>>G->numEdges;
 fscanf(fp,"%d %d",&G->numVertexes,&G->numEdges);
 cout<<"请输入"<numVertexes<<"个景点名"<numVertexes;++i){
 fscanf(fp,"%s",temp);//cin>>G->vexs[i];
 G->vexs[i]=temp;
 }
 //初始化邻接矩阵
 for(i=0;inumVertexes;++i)
 for(j=0;jnumVertexes;++j)
  G->arc[i][j].wei=INF;
 cout<<"请输入"<numEdges<<"条边,包括起点下标、终点下标、路程(KM)和到达方式(s表示索道 w表示步行)"<numEdges;++k){
 char ch;
 fscanf(fp,"%d %d %d %c",&i,&j,&w,&ch);//cin>>i>>j>>w>>ch;
 G->arc[i][j].wei=w;
 G->arc[i][j].way=ch;
 }
 cout<numVertexes;++i){
 cout<<"编号"<vexs[i]< "<<"(索道)"< "<<"(步行)"< xiang;//辅助栈

void slove_ShortestPath(MGraph G,int s,int e)//查找最短路径
{
 int tempe=e;
 if(D[s][e]==INF) cout<<"无可行路径!"< "<<"(索道)"< "<<"(步行)"<>s>>e&&(s+e)>=0)
 {
 if(s==e){
  cout<<"您已在该景点"<

二、运行:

1.读入景点信息文件:

2.查找:

更多学习资料请关注专题《管理系统开发》。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持考高分网。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/62136.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号