欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOCX文档下载  

    (完整word版)数据结构校园导游系统课程设计.docx

    • 资源ID:5685879       资源大小:102.12KB        全文页数:31页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    (完整word版)数据结构校园导游系统课程设计.docx

    用住Q弁居滨江学院蝙麒课程蝴题目校园导游咨询程序设计学号学生姓名院系专业指导教师-O-年月日1、题目的内容及要求设计一个校园导游程序,为来访的客人提供各种信息查询服务。2、需求分析(1)设计你的学校的校园平面图,所含景点不少于10个.以图中顶点表示学校各景点,存放景点名称、代号、简介等信息;以边表示路径,存放路径长度等相关信息.(2)为来访客人提供图中任意景点的问路查询,即查询任意两个景点之间的一条最短的简单路径。(3)为来访客人提供图中任意景点相关信息的查询.3、设计1.功能模块图;voidCreateUDN();创建无向网voidSearCh();查询景点信息voidShOrteStPath(inti);/计算最短路径voidOutput(intsightl,intSight2);输出函数2,各个模块详细的功能描述.CreateUDN();创建无向网、主要用来保存各景点信息SearchO;查询景点信息、景点的名称及介绍Shortestpath(inti);计算两景点间最短路径Output(intSightlJntsight2);输出两景点最短路径及信息3.模块图4>iis-图的储存结构#defineMax30000#defineNUM10typedefstructArcCeII(itadj;*相邻接的景点之间的路程*/ArcCeII;/*定义边的类型*/typedefstructVertexTypeintnumber;/*景点编号*/char*sight;/*景点名称*/char*description;/*景点描述*/JVertexType;/*定义顶点的类型*/typedefstruct(VertexTypevexNUM;/*图中的顶点,即为景点*/ArcCeIIarcsNUMNUM;/*图中的边,即为景点间的距离Vintvexnum,arcnum;*/MGr叩h;/*定义图的类型二、算去1.主龄voidmain()(intv,vl;charck;CreateUDN(NUM,11);do(ck=Menu();switch(ck)case'1,:system(,cis");/narrate();printf("nttt请选择起点景点(09):;scanf(o%d"f&vO);Printf("ttt请选择终点景点(09):”);scanf(,f%d,f,&vl);ShortestPath(v);/*计算两个景点之间的最短路径*/output(v,vl);/*计算两个景点之间的最短路径7Printf("nntttt请按任意键继续.);getchar();getchar();break;case'2':search();break;case'3,:system("clsh);/narrate();×0=l;HaMiTonian(I);Primf("nntttt请按任意键继续。n");getchar();getchar();break;;while(ck!='e,);)2输出程序voidoutput(intsightl,intsight2)(inta,b,c,d,q=0;a=sight2;if(a!=sightl)/*如果景点二不和景点一输入重合,则进行7(printf("nt从s到s的最短路径是",G.vexsightl.sight,G.vexsight2.sight);/*输出提示信息*/Printf("t(最短距离为%dm.)nn,Da);printf("t%s",G.vexsightlosight);d=sightl;*将景点一的编号赋值给d*/for(c=0;cNUM;+C)(gate:;Pasightl=0;for(b=0;b(NUM;b+)if(G0arcsdb0adj<30000&&Pab)/*如果景点一和它的一个临界点之间存在路径且最短路径*/(Printf("一)s,G。vexb.sight);/*输出此节点的名称*/q=q+l;/*计数变量加一,满8控制输出时的换行*/Pab=0;d=b;/*将b作为出发点进行下一次循环输出,如此反复*/if(q%9=0)Printf("n");gotogate;3 .求最短路径voidShortestPath(intnum)(intv,wj,t;intfinalNUM;intmin;for(v=0;v(NUM;v+)(finalv=0;Dv=G.arcsnumvoadj;for(w=0;w<NUM;w+)Pvw=0;if(Dv<30000)(Pvnum=l;Pvv=1;)Dnum=0;finalnum=1;for(i=0;i<NUM;+i)(min=Max;for(w=0;w(NUM;+w)if(!finalw)if(Dw<min)(v=w;min=Dw;)finalv=l;for(w=0;w<NUM;+w)if(!finalw&&(min+G.arcsvw.adj)<Dw)Dw=min+G0arcsvw.adj;for(t=0;t<NUM;t+)Pwt=Pvt;Pww=l;)4 .说明函数voidnarrate()(inti,k=0;printf(",tt*欢迎使用校园导游程序*);pritf(ntt*南京信口工程大学*n");Printf("t_n”);printf("tt景点名称tUt景点描述n");printf("tIn");for(i=OJ(NUM;i+÷)(printf("t(%2d)%-10stttt%-25snj,Govexi.sight,G.vexiodescription);k=k+l;)(完整word版)数据结构校园导游系统课程设计printf("tIn");)5、查询景点信息voidsearch()(intnum;inti;charc;charname20;do(system("clso);C=SearchMenu();switch(c)(case'1':system(11cIsm);narrate();printf("ntt请输入您要查找的景点编号:");scant("%dz/,8inum);for(i=0;i(NUM;i+)if(num=G.vexi.number)Printf("nnttt您要查找景点信息如下:");Printf("ttt%25snnzz,Govexiodescription);Printf("nttt搦JB三S回。.");getchar();getchar();break;)if(i=NM)(printf("11nttt没有找到!);Primf("nnttt按任意键返回getchar();getchar();)break;case,2,:narrate();system("clsn);printfCnntt请输入您要查找的景点名称:");SCanf("%s",name);for(i=0;i<NUM;i+)if(!strcmp(name,Govexi.sight)(printf("nttt您要直找景点信息如下:");description );printf("nnttt%25snnw,G.vexioprintf("nttt按任意键返回;getchar();getchar();break;)if(i=NM)(Printf(nnttt没有找到!");printfCnnttt按任意键返回。.”);getchar();getchar();break;)while(c!=rt');6.选择菜单charSearchMenu()charc;intflag;doflag=l;system(wds");narrate();Printf("nttt/z);printf(tttn");printf(ttt1、按照景点编号查询n");printf("ttt2、按照景点名称查询n");Printf("tttI七返回n");printftttn");printf(ntttlln);PrintfC*tttt请输入您的选择:);scanf(h%c",&c);if(c=rl,c=r2,c='t')flag=O;while(flag);returnc;5、亍结果及分析系统主界面Oix 东气士 J > > > H t 2 3 < < < SZG旅 证我, 馋球 竽物江rFJUR 用笔新文5网体 :体讦. :N ¥ JRT43 宿俘获 翼卷 点等 说导土 al±查询路径1 ? s 起势 a 圜 港清从国书馆到看食堂的崇短路径是(最思运离为2101.>图书馆一 > 老货室一 > 新食堂请按任意键继续请送挥起点芝?(H9)I 请选拄终点拿点(。9)»,从新食堂到文园的班路杼是最屈距离为10«. >新食堂一 文园谓咬任意键继续.查询信息m±东气体大> > > >0 12 3< < < <活动中心e 堂 书江合食食园 图演综老要 >>>>>> 4 5 6 7 8 9请输入您要查找的景点编号,3您要查找景点信息如下:竞赛、晚会举办地按任意键返回6、及体味非常高兴能和同学们一起做实验,感谢各位老师以及同学们对我的匡助,特殊是老师循循善诱的教导和不拘一格的思路赋予我无尽的启迪;这次数据结构设计的每一个实验细节和每一个数据,都离不开老师您的细心指导.7、弋码#include"string.h#includeMStdioohn# include"malloc.h,r# include"stdliboh"# defineMax30000#defineNUM10typedefstructArcCeII(intadj;ArcCeII;typedefstructVertexType(intnumber;char*sight;char*description;JVertexType;typedefstruct(VertexTypevexNUM;ArcCeIIarcsNUMNUM;intve×num,arcnum;MGr叩h;MGraphG;intPNUMNUM;longintDNUM;intx9=0;voidCreatellDN(intv,inta);voidnarrate();voidShortestPath(intnum);voidoutput(intsightl,intsight2);charMenu();voidsearch();charSearchMenuO;voidHaMiTonian(int);voidNextValue(int);voiddisplay();voidmain()(intv,vl;charck;CreateUDN(NM,11);do(ck=Menu();switch(ck)(case,1,system("cis");/narrate();printf(wnttt请选择起点景点(09):");scanf(w%d",&v0);printf(wttt请选择终点景点(09):");scant(m%d",&vl);ShortestPath(v);output(v,vl);printf("nntttt请按任意键继续。.n");getchar();getchar();break;case'2,:search();break;case,3':system(wds");/narrate();×0=1;HaMiTonian(1);printfC,nntttt请按任意键继®。oon");getchar();getchar();break;);while(ck!='e,);)charc;intflag;doflag=l;system(,zclsn);narrate();prntf("nttt-1n");printf(wtttn");printf(wtttL查询景点路径In");printf(wttt2、查询景点信息);printfttt3、推荐参观路线n");printf(',tttt、退出n");printf("tttn");printf("tttlln");printf("tttt请输入您的选择:");scanf("%c,&c);if(c=z1,Ic=三,2zIc=f3,c='t,)flag=0;while(flag);returnc;charSearchMenuOcharc;intflag;doflag=l;system("cis");narrate();printf("ntttrln");printftttn");printf("tttI1、按照景点编号查询n");printf(httt2、按照景点名称杳询n");printf("tttt、返回printf(wtttn");");printf("tttlln");PrimfCtttt请输入您的选择:”);scanf("%c",&c);if(c='l'c='2'c='t)flag=O;while(flag);returnc;)voidsearch()intnum;inti;charc;charname20;doSyStemCCIS");C=SearchMenuO;switch(c)(case,1,:system(',cIsm);narrate();printf("ntt请输入您要查找的景点编号:");scanf("%d",&num);for(i=0;i(NUM;i+)(if(num=Govexi.number)(Printf("nnttt您要查找景点信息如下:");printf("nnttt%-25snn,Govexi.description);printfCnttt按任意键返回。getchar();getchar();(完整word版)数据结构校园导游系统课程设计break;)if(i=NM)(printf(wnnttt没有找到!");printf(onnttt按任意键返回.");getchar();getchar();)break;case,2,:narrate();system(ocis");printf(nntt请输入您要查找的景点名称:");SCanf("%sm,name);for(i=0;i(NUM;i+)(if(!strcmp(name,G0vexi0sight)(printf("nnttt您要查找景点信息如下:");printf(z,nnttt%25snn,G.vexiodescription);printf("nttt按任意键返回");getchar();getchar();break;)if(i=NUM)(printfCnnttt没有找到!");printf(/,nnttt按任意键返回。“);getchar();getchar();)break;while(c!='t');voidCreatelIDN(intvzinta)inti,j;Govexnum=v;G.arcnum=a;for(i=0;iG0vexnum;+i)G.vexi.number=1;G0vex0osight="东大门";G.vexOodescription=03Eo";Gvexl.sight="气象楼"G.vex1.description="校气象研究楼.";Gvex2.sight="体育馆;G.vex20description=w运动,放松心情";G.vex30sight="大学生活动中心”;G0vex3.description=晚会举办地";G.vex4.sight="图书馆"G0vex4odescription="阅览,借阅图书”;G0vex5oSight="滨江楼";G.vex5.description="学习,自习室”;Gvex.sight="综合楼";Govex6.description="学习,办公室";Govex7.sight="老食堂";G0vex7.description="餐饮休闲"Govex8sight="新食堂";G.vex8odescription="餐饮休闲";G.vex9.sight="文园";Govex9.description=w宿舍,歇息";for(i=Oji<G0vexnum;+i)for(j=0;j<G.vexnum;+j)G0arcsijoadj=Max;G.arcs01oadj=Goarcsl0oadj=2;G0arcs02.adj=G0arcs20oadj=l;G0arcsO30adj=G.arcs30oadj=7;Goarcs14.adj=Goares4loadj=8;G.arcs24.adj=Goarcs420adj=9;Goarcs35oadj=Goarcs53oadj=5;G.arcs57oadj=G.arcs75oadj=2;G.arcs46oadj=Goarcs640adj=3;Goarcs47,adj=Goarcs74.adj=2;G.arcs68oadj=Goarcs86.adj=2;G0arcs78.adj=Goarcs87oadj=l;Goarcs890adj=Goares98.adj=l;)voidnarrate()(inti,k=O;printfCntt*欢迎使用校园导游程序*n");Prjntf("ntt*南京信息工程大学*n"),printftn");p11ntf("tt景点名称ttIt景点描述n");Printf("tIn");for(i=0;i(NUM;i+)printf("t(%2d)%10stttt%25snw,i,G.vexi.sight,Govexiodescription);k=k+l;)printf(tIn");voidShortestPath(intnum)(intv,w,i,t;intfinalNUM;intmin;for(v=0;v(NUM;v+)(finalv=O;Dv=Goarcsnumvoadj;for(w=0;w<NUM;w+)Pvw=0;if(Dv<30000)Pvnum=1;Pvv=1;)Dnum=0;finalnum=1;for(i=0;i<NUM;+i)min=Max;for(w=0;w(NUM;+w)if(!finalw)if(Dw<min)(v=w;min=Dw;)finalv=1;for(w=0;w<NUM;+w)if(!finalw&&(min+G.arcsvw.adj)(Dw)(Dw=min+G0arcsvw.adj;for(t=0;t(NUM;t+)Pwt=Pvt;Pww=l;)voidoutput(intsightl,intsight2)inta,b,c,d,q=0;a=sight2;if(a!=sightl)/*如果景点二不和景点一输入重合,则进行*/(printf(wnt从%s到%s的最短路径是",G。vexsightl0sight,G0vexsight2osight);/*输出提示信息*/Printf(N(最短距离为%dm.)nnf,Da);printf("t%so,G.vexsightl.sight);d=sightl;/*将景点一的编号赋值给d*/for(c=0;c(NUM;+c)(gate:;Pasightl=0;for(b=0;b<NUM;b+)(if(G0arcsdb.adj<30000&&Pab)/*如果景点一和它的一个临界点之间存在路径且最短路径*/(printf>%s"rGovexb.sight);/*输出此节点的名称*/q=q÷l;/*计数变量加一,满8控制输出时的换行*/Pab=0;d=b;/*将b作为出发点进行下一次循环输出,如此反复*/if(q%9=0)printf("n");gotogate;)voidHaMiTonian(intm)(if(m>9)return;1.:NextValue(m);if(xm=0)return;if(m=8&&Goarcs0x9-l.adj!=30000)display();elseHaMiTonian(m+l);gotoL;)voidNe×tValue(intk)(intj;I:xk=(xk+1)%10;if(xk=0)return;if(G.arcs×k-1-lxkl.adj!=30000)for(j=0;j<k;j+)if(Xj=×Ik)gotoI;return;)elsegotoI;)voiddisplay()inti=0;Primf("nnt");for(i=0;i<9;i+)printf("%s")",G.vexxil.sight);Printf("出口”);printf("n);

    注意事项

    本文((完整word版)数据结构校园导游系统课程设计.docx)为本站会员(李司机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开