石家庄铁道大学校园导游实习报告(2)

2020-04-15 12:41

} //双VOID函数结束。。。。。。。说明双void也是起框架作用的函数

MGraph InitGraph(void) {

MGraph G; int i,j;

G.vexnum=10; G.arcnum=14;

for(i=0;i

G.vexs[i].num=i;//vexs[MAX_VERTEX_NUM]上面这样定义的 strcpy(G.vexs[0].name,\综合食堂\

strcpy(G.vexs[0].introduction,\新建标准化食堂\ strcpy(G.vexs[1].name,\东西办公楼\

strcpy(G.vexs[1].introduction,\全体教师办公场所,楼高12层,各种设施齐全\

strcpy(G.vexs[2].name,\号学生宿舍楼\

strcpy(G.vexs[2].introduction,\数理系男生宿舍楼,苏式建筑\ strcpy(G.vexs[3].name,\医院\

strcpy(G.vexs[3].introduction,\校医院,设施不是很齐全,只能看小病,收费较贵\

strcpy(G.vexs[4].name,\图书馆\

strcpy(G.vexs[4].introduction,\藏书60万册,设施良好,2楼为电子阅览室,环境幽雅\

strcpy(G.vexs[5].name,\足球场\

strcpy(G.vexs[5].introduction,\现代化塑胶跑道,人造草坪,适宜锻炼身体的场所\

strcpy(G.vexs[6].name,\沁园\

strcpy(G.vexs[6].introduction,\绿树成荫,适宜休息和读书\ strcpy(G.vexs[7].name,\主教学楼\

strcpy(G.vexs[7].introduction,\学院最大的教学楼,共5层,环形建筑,适宜学习\

strcpy(G.vexs[8].name,\西教学楼\

strcpy(G.vexs[8].introduction,\学院第二大教学楼,环境较差\ strcpy(G.vexs[9].name,\多媒体楼\

strcpy(G.vexs[9].introduction,\多媒体教学场所,设施先进,环境良好\ for(i=0;i

G.arcs[i][j].adj=INFINITY; G.arcs[0][1].adj=100; G.arcs[0][2].adj=150; G.arcs[0][3].adj=195;

G.arcs[1][6].adj=210; G.arcs[1][3].adj=100; G.arcs[1][2].adj=180; G.arcs[2][3].adj=150; G.arcs[2][5].adj=350; G.arcs[3][4].adj=100; G.arcs[3][6].adj=110; G.arcs[4][6].adj=20; G.arcs[4][5].adj=100; G.arcs[4][9].adj=80; G.arcs[4][8].adj=130; G.arcs[5][9].adj=150; G.arcs[5][8].adj=200; G.arcs[6][8].adj=80; G.arcs[6][7].adj=80; G.arcs[6][9].adj=70; G.arcs[7][8].adj=80; G.arcs[7][9].adj=90; G.arcs[8][9].adj=150; for(i=0;i

G.arcs[j][i].adj=G.arcs[i][j].adj; return G; }//InitGraph end

void Menu() {

printf(\石家庄铁道学院导游图\\n\

printf(\┏━━━━━━━━━━━━━━━━━━━━┓\\n\

printf(\ ┃ 1.浏览校园全景 ┃\\n\

printf(\ ┃ 2.查看所有游览路线 ┃\\n\

printf(\┃ 3.选择出发点和目的地 ┃\\n\

printf(\ ┃ 4.查看景点信息 ┃\\n\

printf(\ ┃ 5.退出系统 ┃\\n\

printf(\┗━━━━━━━━━━━━━━━━━━━━┛\\n\

printf(\ }

void Browser(MGraph *G) {

int v;

printf(\┏━━┳━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\\n\

printf(\┃编号┃景点名称 ┃简介 ┃\\n\

for(v=0;vvexnum;v++) printf(\┃%-4d┃%-16s┃%-56s ┃\\n\

printf(\┗━━┻━━━━━━━━┻━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\\n\

printf(\┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓ \\n\printf(\┃ ┃ \\n\printf(\┃ ┏━━━━┓ ┏━━━━━━━━━━━━━┓ ┃ \\n\

printf(\┃ ┃5 足球场┣━━━━━┓ ┃┏━━━━━━━━┓ ┃ ┃ \\n\

printf(\┃ ┗━━━━┛ ┣━━━━━━━━━━━━━━━━━╋┫2 七号学生宿舍楼┃ ┃ ┃ \\n\

printf(\┃ ┃ ┏━━━━┓ ┏━━━┓

┃┗━━━━━━━━┛ ┃ ┃ \\n\printf(\┃ ┃ ┃4 图书馆┃ ┃3医 院

┃┃ ┃ ┃ \\n\printf(\┃ ┃ ┗━━┳━┛ ┗━┳━┛┃ ┃ ┃ \\n\

printf(\┃ ┃ ┃ ┃ ┃ ┏━┻━━━┓ ┃ \\n\

printf(\┃ ┏━━━━━╋━━━━╋━━━━━━━━━┻━┳┻━━━━━━━━━┳━┫0综合食堂 ┃ ┃ \\n\

printf(\┃ ┏━━┻━━┓ ┃ ┏━┻━┓ ┃ ┏━━━━━━┓┃ ┗━━━━━┛ ┃ \\n\

printf(\┃ ┃9 多媒体楼┃ ┃ ┃6沁园 ┣━━━━━━━━━┻━━┫1 东西办公楼┣┫ ┃ \\n\

printf(\┃ ┗━━━━━┛ ┃ ┗━┳━┛ ┗━━━━━━┛┃ ┃ \\n\

printf(\┃ ┏━━━━━┓ ┣━━━━┻━━┓ ┃ ┃ \\n\

printf(\┃ ┃8西教学楼 ┃ ┃ ┏━━┻━━┓ ┃ ┃ \\n\

printf(\┃ ┗━━┳━━┛ ┃ ┃ 7 主教学 ┃ ┃ ┃ \\n\

printf(\┃ ┃ ┃ ┗━━┳━━┛ ┃ ┃ \\n\

printf(\┃ ┗━━━━━┻━━━━━━━┻━━━━━━━━━━━━━━━━━━━┛ ┃ \\n\

printf(\┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛ \\n\}

// 迪杰斯特拉算法来计算出起点到各个顶点之间的最短路径,v0为起点 void ShortestPath_DIJ(MGraph * G) {

int v,w,i,min,t=0,x,flag=1,v0;

int final[20], D[20], p[20][20];

while(flag) //while保证输入的数值在确定范围内的 {

printf(\请输入一个起始景点编号:\ scanf(\

if(v0<0||v0>G->vexnum) {

printf(\景点编号不存在!请重新输入景点编号:\ scanf(\ }

if(v0>=0&&v0vexnum) flag=0; }

// int v,w,i,min,t=0,x,flag=1,v0; // int final[20], D[20], p[20][20];

for(v=0;vvexnum;v++) {

final[v]=0; //当结果是1时说明已经求得v0到v的最短路径

D[v]=G->arcs[v0][v].adj;

for(w=0;wvexnum;w++)

p[v][w]=0; //p[v][w]=1说明w是从v0到v当前求得最短路径上的顶点

if(D[v]

p[v][v0]=1;p[v][v]=1; } }

D[v0]=0;final[v0]=1; //初始化v0顶点集为s

//开始主循环,每次求得v0到某一v顶点的最短路径,并加v到s for(i=1;ivexnum;i++) //其余G->vexnum-1个顶点 {

min=INFINITY; //当前所知离v0最近的距离 for(w=0;wvexnum;w++)

if(!final[w]) //确保定点w是存在是所求的 if(D[w]

for(w=0;wvexnum;w++) //更新当前最短路径及距离 if(!final[w]&&(min+G->arcs[v][w].adj

D[w]=min+G->arcs[v][w].adj;//实现累加过成 for(x=0;xvexnum;x++)? p[w][x]=p[v][x]; p[w][w]=1; } }

for(v=0;vvexnum;v++) {

if(v0!=v) printf(\ for(w=0;wvexnum;w++) {

if(p[v][w]&&w!=v0) printf(\ t++; }

if(t>G->vexnum-1&&v0!=v)printf(\总路线长%dm\\n\\n\ }

}//ShortestPath_DIJ end


石家庄铁道大学校园导游实习报告(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2019-2020学年七年级语文下册 9《阿长与山海经》教案设计 新人教

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: