版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
滨江学院《数据结构》课程设计题目校园导游咨询程序设计学号 学生姓名 院系 专业 指导教师 二O一二年月日题目的内容及要求设计一个校园导游程序,为来访的客人提供各种信息查询服务。需求分析(1)设计你的学校的校园平面图,所含景点不少于10个。以图中顶点表示学校各景点,存放景点名称、代号、简介等信息;以边表示路径,存放路径长度等相关信息。(2)为来访客人提供图中任意景点的问路查询,即查询任意两个景点之间的一条最短的简单路径。(3)为来访客人提供图中任意景点相关信息的查询。3、概要设计1.功能模块图;voidCreateUDN();//创建无向网voidSearch();//查询景点信息voidShortestpath(inti);//计算最短路径voidOutput(intsight1,intsight2);//输出函数2.各个模块详细的功能描述。CreateUDN();//创建无向网、主要用来保存各景点信息Search();//查询景点信息、景点的名称及介绍Shortestpath(inti);//计算两景点间最短路径Output(intsight1,intsight2);//输出两景点最短路径及信息3.模块图详细设计一、图的储存结构#defineMax30000#defineNUM10typedefstructArcCell{intadj;/*
相邻接的景点之间的路程
*/
}ArcCell;
/*
定义边的类型
*/
typedefstructVertexType{intnumber;/*
景点编号
*/
char*sight;/*
景点名称
*/char*description;/*
景点描述
*/}VertexType;/*
定义顶点的类型
*/
typedefstruct{VertexTypevex[NUM];
/*
图中的顶点,即为景点
*/ArcCellarcs[NUM][NUM];/*
图中的边,即为景点间的距离
*/intvexnum,arcnum;/*
顶点数,边数
*/
}MGraph;
/*
定义图的类型
算法1.主程序voidmain(){intv0,v1;charck;CreateUDN(NUM,11);do{ck=Menu();switch(ck){case'1':system("cls");//narrate();printf("\n\n\t\t\t请选择起点景点(0~9):");scanf("%d",&v0);printf("\t\t\t请选择终点景点(0~9):");scanf("%d",&v1);ShortestPath(v0);
/*
计算两个景点之间的最短路径
*/output(v0,v1);
/*
计算两个景点之间的最短路径
*/printf("\n\n\t\t\t\t请按任意键继续...\n");getchar();getchar();break;case'2':search();break;case'3':system("cls");//narrate();x[0]=1;HaMiTonian(1);printf("\n\n\t\t\t\t请按任意键继续...\n");getchar();getchar();break;};}while(ck!='e');}输出程序voidoutput(intsight1,intsight2){inta,b,c,d,q=0;a=sight2;if(a!=sight1)/*
如果景点二不和景点一输入重合,则进行
*/{printf("\n\t从%s到%s的最短路径是",G.vex[sight1].sight,G.vex[sight2].sight);/*
输出提示信息
*/
printf("\t(最短距离为%dm.)\n\n\t",D[a]);printf("\t%s",G.vex[sight1].sight);d=sight1;
/*
将景点一的编号赋值给d
*/
for(c=0;c<NUM;++c){gate:;P[a][sight1]=0;for(b=0;b<NUM;b++){if(G.arcs[d][b].adj<30000&&P[a][b])/*
如果景点一和它的一个临界点之间存在路径且最短路径
*/
{printf("-->%s",G.vex[b].sight);/*
输出此节点的名称
*/
q=q+1;/*
计数变量加一,满8控制输出时的换行
*/P[a][b]=0;d=b;
/*
将b作为出发点进行下一次循环输出,如此反复
*/if(q%9==0)printf("\n");gotogate;}}}}}求最短路径
voidShortestPath(intnum){intv,w,i,t;intfinal[NUM];intmin;for(v=0;v<NUM;v++){final[v]=0;D[v]=G.arcs[num][v].adj;for(w=0;w<NUM;w++)P[v][w]=0;if(D[v]<30000){P[v][num]=1;P[v][v]=1;}}D[num]=0;final[num]=1;for(i=0;i<NUM;++i){min=Max;for(w=0;w<NUM;++w)if(!final[w])if(D[w]<min){v=w;min=D[w];}final[v]=1;for(w=0;w<NUM;++w)if(!final[w]&&((min+G.arcs[v][w].adj)<D[w])){D[w]=min+G.arcs[v][w].adj;for(t=0;t<NUM;t++)P[w][t]=P[v][t];P[w][w]=1;}}}说明函数voidnarrate(){inti,k=0;printf("\n\t\t*****************欢迎使用校园导游程序***************\n");printf("\n\t\t********************南京信息工程大学*******************\n");printf("\t__________________________________________________________________\n");printf("\t\t景点名称\t\t|\t景点描述\n");printf("\t________________________________|_________________________________\n");for(i=0;i<NUM;i++){printf("\t(%2d)%-10s\t\t\t|\t%-25s\n",i,G.vex[i].sight,G.vex[i].description);k=k+1;}printf("\t________________________________|_________________________________\n");}5、查询景点信息voidsearch(){intnum;inti;charc;charname[20];do{system("cls");c=SearchMenu();switch(c){case'1':system("cls");narrate();printf("\n\n\t\t请输入您要查找的景点编号:");scanf("%d",&num);for(i=0;i<NUM;i++){if(num==G.vex[i].number){printf("\n\n\t\t\t您要查找景点信息如下:");printf("\n\n\t\t\t%-25s\n\n",G.vex[i].description);printf("\n\t\t\t按任意键返回...");getchar();getchar();break;}}if(i==NUM){printf("\n\n\t\t\t没有找到!");printf("\n\n\t\t\t按任意键返回...");getchar();getchar();}break;case'2':narrate();system("cls");printf("\n\n\t\t请输入您要查找的景点名称:");scanf("%s",name);for(i=0;i<NUM;i++){if(!strcmp(name,G.vex[i].sight)){printf("\n\n\t\t\t您要查找景点信息如下:");printf("\n\n\t\t\t%-25s\n\n",G.vex[i].description);printf("\n\t\t\t按任意键返回...");getchar();getchar();break;}}if(i==NUM){printf("\n\n\t\t\t没有找到!");printf("\n\n\t\t\t按任意键返回...");getchar();getchar();}break;}}while(c!='t');}选择菜单charSearchMenu(){charc;intflag;do{flag=1;system("cls");narrate();printf("\n\t\t\t┏━━━━━━━━━━━━━━━┑\n");printf("\t\t\t┃┃\n");printf("\t\t\t┃1、按照景点编号查询┃\n");printf("\t\t\t┃2、按照景点名称查询┃\n");printf("\t\t\t┃t、返回┃\n");printf("\t\t\t┃┃\n");printf("\t\t\t┗━━━━━━━━━━━━━━━┛\n");printf("\t\t\t\t请输入您的选择:");scanf("%c",&c);if(c=='1'||c=='2'||c=='t')flag=0;}while(flag);returnc;}5、运行结果及分析系统主界面查询路径查询信息6、收获及体会非常高兴能和同学们一起做实验,感谢各位老师以及同学们对我的帮助,特别是老师循循善诱的教导和不拘一格的思路给予我无尽的启迪;这次数据结构设计的每个实验细节和每个数据,都离不开老师您的细心指导。7、源代码#include"string.h"#include"stdio.h"#include"malloc.h"#include"stdlib.h"#defineMax30000#defineNUM10typedefstructArcCell{intadj;}ArcCell;typedefstructVertexType{intnumber;char*sight;char*description;}VertexType;typedefstruct{VertexTypevex[NUM];ArcCellarcs[NUM][NUM];intvexnum,arcnum;}MGraph;MGraphG;intP[NUM][NUM];longintD[NUM];intx[9]={0};voidCreateUDN(intv,inta);voidnarrate();voidShortestPath(intnum);voidoutput(intsight1,intsight2);charMenu();voidsearch();charSearchMenu();voidHaMiTonian(int);voidNextValue(int);voiddisplay();voidmain(){intv0,v1;charck;CreateUDN(NUM,11);do{ck=Menu();switch(ck){case'1':system("cls");//narrate();printf("\n\n\t\t\t请选择起点景点(0~9):");scanf("%d",&v0);printf("\t\t\t请选择终点景点(0~9):");scanf("%d",&v1);ShortestPath(v0);output(v0,v1);printf("\n\n\t\t\t\t请按任意键继续...\n");getchar();getchar();break;case'2':search();break;case'3':system("cls");//narrate();x[0]=1;HaMiTonian(1);printf("\n\n\t\t\t\t请按任意键继续...\n");getchar();getchar();break;};}while(ck!='e');}charMenu(){charc;intflag;do{flag=1;system("cls");narrate();printf("\n\t\t\t┏━━━━━━━━━━━━━━━┑\n");printf("\t\t\t┃┃\n");printf("\t\t\t┃1、查询景点路径┃\n");printf("\t\t\t┃2、查询景点信息┃\n");printf("\t\t\t┃3、推荐参观路线┃\n");printf("\t\t\t┃t、退出┃\n");printf("\t\t\t┃┃\n");printf("\t\t\t┗━━━━━━━━━━━━━━━┛\n");printf("\t\t\t\t请输入您的选择:");scanf("%c",&c);if(c=='1'||c=='2'||c=='3'||c=='t')flag=0;}while(flag);returnc;}charSearchMenu(){charc;intflag;do{flag=1;system("cls");narrate();printf("\n\t\t\t┏━━━━━━━━━━━━━━━┑\n");printf("\t\t\t┃┃\n");printf("\t\t\t┃1、按照景点编号查询┃\n");printf("\t\t\t┃2、按照景点名称查询┃\n");printf("\t\t\t┃t、返回┃\n");printf("\t\t\t┃┃\n");printf("\t\t\t┗━━━━━━━━━━━━━━━┛\n");printf("\t\t\t\t请输入您的选择:");scanf("%c",&c);if(c=='1'||c=='2'||c=='t')flag=0;}while(flag);returnc;}voidsearch(){intnum;inti;charc;charname[20];do{system("cls");c=SearchMenu();switch(c){case'1':system("cls");narrate();printf("\n\n\t\t请输入您要查找的景点编号:");scanf("%d",&num);for(i=0;i<NUM;i++){if(num==G.vex[i].number){printf("\n\n\t\t\t您要查找景点信息如下:");printf("\n\n\t\t\t%-25s\n\n",G.vex[i].description);printf("\n\t\t\t按任意键返回...");getchar();getchar();break;}}if(i==NUM){printf("\n\n\t\t\t没有找到!");printf("\n\n\t\t\t按任意键返回...");getchar();getchar();}break;case'2':narrate();system("cls");printf("\n\n\t\t请输入您要查找的景点名称:");scanf("%s",name);for(i=0;i<NUM;i++){if(!strcmp(name,G.vex[i].sight)){printf("\n\n\t\t\t您要查找景点信息如下:");printf("\n\n\t\t\t%-25s\n\n",G.vex[i].description);printf("\n\t\t\t按任意键返回...");getchar();getchar();break;}}if(i==NUM){printf("\n\n\t\t\t没有找到!");printf("\n\n\t\t\t按任意键返回...");getchar();getchar();}break;}}while(c!='t');}voidCreateUDN(intv,inta){inti,j;G.vexnum=v;G.arcnum=a;for(i=0;i<G.vexnum;++i)G.vex[i].number=i;G.vex[0].sight="东大门";G.vex[0].description="学校正门。";G.vex[1].sight="气象楼";G.vex[1].description="校气象研究楼。";G.vex[2].sight="体育馆";G.vex[2].description="运动,放松心情";G.vex[3].sight="大学生活动中心";G.vex[3].description="竞赛、晚会举办地";G.vex[4].sight="图书馆";G.vex[4].description="阅览,借阅图书";G.vex[5].sight="滨江楼";G.vex[5].description="学习,自习室";G.vex[6].sight="综合楼";G.vex[6].description="学习,办公室";G.vex[7].sight="老食堂";G.vex[7].description="餐饮休闲";G.vex[8].sight="新食堂";G.vex[8].description="餐饮休闲";G.vex[9].sight="文园";G.vex[9].description="宿舍,休息";for(i=0;i<G.vexnum;++i)for(j=0;j<G.vexnum;++j)G.arcs[i][j].adj=Max;G.arcs[0][1].adj=G.arcs[1][0].adj=2;G.arcs[0][2].adj=G.arcs[2][0].adj=1;G.arcs[0][3].adj=G.arcs[3][0].adj=7;G.arcs[1][4].adj=G.arcs[4][1].adj=8;G.arcs[2][4].adj=G.arcs[4][2].adj=9;G.arcs[3][5].adj=G.arcs[5][3].adj=5;G.arcs[5][7].adj=G.arcs[7][5].adj=2;G.arcs[4][6].adj=G.arcs[6][4].adj=3;G.arcs[4][7].adj=G.arcs[7][4].adj=2;G.arcs[6][8].adj=G.arcs[8][6].adj=2;G.arcs[7][8].adj=G.arcs[8][7].adj=1;G.arcs[8][9].adj=G.arcs[9][8].adj=1;}voidnarrate(){inti,k=0;printf("\n\t\t*****************欢迎使用校园导游程序***************\n");printf("\n\t\t********************南京信息工程大学*******************\n");printf("\t__________________________________________________________________\n");printf("\t\t景点名称\t\t|\t景点描述\n");printf("\t________________________________|_________________________________\n");for(i=0;i<NUM;i++){printf("\t(%2d)%-10s\t\t\t|\t%-25s\n",i,G.vex[i].sight,G.vex[i].description);k=k+1;}printf("\t________________________________|_________________________________\n");}voidShortestPath(intnum){intv,w,i,t;intfinal[NUM];intmin;for(v=0;v<NUM;v++){final[v]=0;D[v]=G.arcs[num][v].adj;for(w=0;w<NUM;w++)P[v][w]=0;if(D[v]<30000){P[v][num]=1;P[v][v]=1;}}D[num]=0;final[num]=1;for(i=0;i<NUM;++i){min=Max;for(w=0;w<NUM;++w)if(!final[w])if(D[w]<min){v=w;min=D[w];}final[v]=1;for(w=0;w<NUM;++w)if(!final[w]&&((min+G.arcs[v][w].adj)<D[w])){D[w]=min+G.arcs[v][w].adj;for(t=0;t<NUM;t++)P[w][t]=P[v][t];P[w][w]=1;}}}voidoutput(intsight1,intsight2){inta,b,c,d,q=0;a=sight2;if(a!=sight1)/*
如果景点二不和景点一输入重合,则进行
*/{printf("\n\t从%s到%s的最短路径是",G.vex[sight1].sight,G.vex[sight2].sight);/*
输出提示信息
*/
printf("\t(最短距离为%dm.)\n\n\t",D[a]);printf("\t%s",G.vex[sight1].sight);d=sight1;
/*
将景点一的编号赋值给d
*/
for(c=0;c<NUM;++c){gate:;P[a][sight1]=0;for(b=0;b<NUM;b++){if(G.arcs[d][b].adj<30000&&P[a][b])/*
如果景点一和它的一个临界点之间存在路径且最短路径
*/
{printf("-->%s",G.vex[b].sight);/*
输出此节点的名称
*/
q=q+1;/*
计数变量加一,满8控制输出时的换行
*/P[a][b]=0;d=b;
/*
将b作为出发点进行下一次循环输出,如此反复
*/if(q%9==0)printf("\n");gotogate;}}}}}voidHaMiTonian(intm){if(m>9)return;L:NextValue(m);if(x[m]==0)return;if(m==8&&G.arcs[0][x[9]-1].adj!=30000)display();elseHaMiTonian(m+1);gotoL;}voidNextValue(intk){intj;l:x[k]=(x[k]+1)%10;if(x[k]==0)return;if(G.arcs[x[k-1]-1][x[k]-1].adj!=30000){for(j=0;j<k;j++)if(x[j]==x[k])gotol;return;}elsegotol;}voiddisplay(){inti=0;printf("\n\n\t");for(i=0;i<9;i++)printf("%s->",G.vex[x[i]-1].sight);printf("出口");printf("\n");}
咖啡店创业计划书第一部分:背景在中国,人们越来越爱喝咖啡。随之而来的咖啡文化充满生活的每个时刻。无论在家里、还是在办公室或各种社交场合,人们都在品着咖啡。咖啡逐渐与时尚、现代生活联系在一齐。遍布各地的咖啡屋成为人们交谈、听音乐、休息的好地方,咖啡丰富着我们的生活,也缩短了你我之间的距离,咖啡逐渐发展为一种文化。随着咖啡这一有着悠久历史饮品的广为人知,咖啡正在被越来越多的中国人所理解。第二部分:项目介绍第三部分:创业优势目前大学校园的这片市场还是空白,竞争压力小。而且前期投资也不是很高,此刻国家鼓励大学生毕业后自主创业,有一系列的优惠政策以及贷款支持。再者大学生往往对未来充满期望,他们有着年轻的血液、蓬勃的朝气,以及初生牛犊不怕虎的精神,而这些都是一个创业者就应具备的素质。大学生在学校里学到了很多理论性的东西,有着较高层次的技术优势,现代大学生有创新精神,有对传统观念和传统行业挑战的信心和欲望,而这种创新精神也往往造就了大学生创业的动力源泉,成为成功创业的精神基础。大学生创业的最大好处在于能提高自己的潜力、增长经验,以及学以致用;最大的诱人之处是透过成功创业,能够实现自己的理想,证明自己的价值。第四部分:预算1、咖啡店店面费用咖啡店店面是租赁建筑物。与建筑物业主经过协商,以合同形式达成房屋租赁协议。协议资料包括房屋地址、面积、结构、使用年限、租赁费用、支付费用方法等。租赁的优点是投资少、回收期限短。预算10-15平米店面,启动费用大约在9-12万元。2、装修设计费用咖啡店的满座率、桌面的周转率以及气候、节日等因素对收益影响较大。咖啡馆的消费却相对较高,主要针对的也是学生人群,咖啡店布局、格调及采用何种材料和咖啡店效果图、平面图、施工图的设计费用,大约6000元左右3、装修、装饰费用具体费用包括以下几种。(1)外墙装饰费用。包括招牌、墙面、装饰费用。(2)店内装修费用。包括天花板、油漆、装饰费用,木工、等费用。(3)其他装修材料的费用。玻璃、地板、灯具、人工费用也应计算在内。整体预算按标准装修费用为360元/平米,装修费用共360*15=5400元。4、设备设施购买费用具体设备主要有以下种类。(1)沙发、桌、椅、货架。共计2250元(2)音响系统。共计450(3)吧台所用的烹饪设备、储存设备、洗涤设备、加工保温设备。共计600(4)产品制造使用所需的吧台、咖啡杯、冲茶器、各种小碟等。共计300净水机,采用美的品牌,这种净水器每一天能生产12l纯净水,每一天销售咖啡及其他饮料100至200杯,价格大约在人民币1200元上下。咖啡机,咖啡机选取的是电控半自动咖啡机,咖啡机的报价此刻就应在人民币350元左右,加上另外的附件也不会超过1200元。磨豆机,价格在330―480元之间。冰砂机,价格大约是400元一台,有点要说明的是,最好是买两台,不然夏天也许会不够用。制冰机,从制冰量上来说,一般是要留有富余。款制冰机每一天的制冰量是12kg。价格稍高550元,质量较好,所以能够用很多年,这么算来也是比较合算的。5、首次备货费用包括购买常用物品及低值易耗品,吧台用各种咖啡豆、奶、茶、水果、冰淇淋等的费用。大约1000元6、开业费用开业费用主要包括以下几种。(1)营业执照办理费、登记费、保险费;预计3000元(2)营销广告费用;预计450元7、周转金开业初期,咖啡店要准备必须量的流动资金,主要用于咖啡店开业初期的正常运营。预计2000元共计: 120000+6000+5400+2250+450+600+300+1200+1200+480+400+550+1000+3000+450+2000=145280元第五部分:发展计划1、营业额计划那里的营业额是指咖啡店日常营业收入的多少。在拟定营业额目标时,必须要依据目前市场的状况,再思考到咖啡店的经营方向以及当前的物价情形,予以综合衡量。按照目前流动人口以及人们对咖啡的喜好预计每一天的营业额为400-800,根据淡旺季的不同可能上下浮动2、采购计划依据拟订的商品计划,实际展开采购作业时,为使采购资金得到有效运用以及商品构成达成平衡,务必针对设定的商品资料排定采购计划。透过营业额计划、商品计划与采购计划的确立,我们不难了解,一家咖啡店为了营业目标的达成,同时有效地完成商品构成与灵活地运用采购资金,各项基本的计划是不可或缺的。当一家咖啡店设定了营业计划、商品计划及采购计划之后,即可依照设定的采购金额进行商品的采购。经过进货手续检验、标价之后,即可写在菜单上。之后务必思考的事情,就是如何有效地将这些商品销售出去。3、人员计划为了到达设定的经营目标,经营者务必对人员的任用与工作的分派有一个明确的计划。有效利用人力资源,开展人员培训,都是我们务必思考的。4、经费计划经营经费的分派是管理的重点工作。通常能够将咖啡店经
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年版特许经营权授予协议
- 买卖协议书汇编六篇
- 2024年度砸墙工程设计与施工监理合同3篇
- 2024年生产协作合同3篇
- 2024年版食堂厨房管理服务合同3篇
- 活动计划模板集锦五篇
- 大学生学习计划15篇
- 收购合同汇编10篇
- 对甲氧基苯甲醛项目商业计划书
- 学校后勤干事岗位职责总结
- 七年级语文上册:15、《古代诗歌四首》教案
- 气道评估与处理课件
- 脑血管病的介入诊疗课件
- RCS-9626CN电动机保护测控装置
- 苗木供货服务计划方案
- 回转支承实验台测试系统设计毕业设计论文
- 全员安全生产责任考核表
- 董事长调研方案
- 危险化学品MSDS(次氯酸钠溶液)
- 某物业公司薪酬管理制度
- 江苏省地图矢量PPT模板(可编辑)
评论
0/150
提交评论