C语言迷宫(经典题目)

上传人:豆*** 文档编号:205031732 上传时间:2023-04-28 格式:DOCX 页数:13 大小:18.52KB
收藏 版权申诉 举报 下载
C语言迷宫(经典题目)_第1页
第1页 / 共13页
C语言迷宫(经典题目)_第2页
第2页 / 共13页
C语言迷宫(经典题目)_第3页
第3页 / 共13页
资源描述:

《C语言迷宫(经典题目)》由会员分享,可在线阅读,更多相关《C语言迷宫(经典题目)(13页珍藏版)》请在装配图网上搜索。

1、在上面的迷宫中只有一种入口,有地方是有食物的,目前一只老鼠从入口处进来,规定能找到所有的食物并且打印找到食物的途径。()图信息:#efne N 8srut ginon up,dwn,et,right;i food,visit;aNN; ()记录途径pahN*N;(3)找到食物axfd=(4)代码#icld sio.h#ilud#defineN ntph4,k=0;tructginont u,don,ft,right;nt fod,vist; a=,0,0,1,0,0, ,1,1,0,0,0,1,1,1,, 0,0,1,1,0,,1,1,0,0, 0,1,1,0, 0,0,1,,0,0, 0,,

2、0,0,0,0,0,0,0,0,1,,0,0,1,0,1,1,0, ,1,,0, 0,1,,0,0,0, 1,1,0,1,,0, 0,1,0,0,0,1,1,,0,0,0,0,1,0,0,0, 0,1,0,0,0,0, 0,1,0,0,0, 1,1,0,0,0, 1,1,0,0,1,,0,0,0,0, 1,1,0, 1,1,0,0,0,1,1,0,0,, 1,1,0,1,0,,1,1,1,0,0,0, 1,1,0,1,0, 1,0,1,1,0,0,1,0,1,0,0, 1,0,0,0,1,, 1,1,0,0,0,1,1,1,0,0, 1,1,1,0,0, 1,0,0,,0,1,0,0,,0,

3、0,0,1,1,0, 0,,1,0,0, 0,0,1,,, 1,1,1,0,0,,,0,0,0,0, 1,0,0,0,0,0, ,1,0,0,0, 0,0,1,1,0,0, 0,0,,0,0, 0,1,1,0,0, 0,0,1,0, ,0,0,0,0,1,,0,0,1,0,0, 1,0,1,0,, ,1,,1,0,,1,1,0,0, 1,0,1,,0, ,1,1,,0, 0,1,0,0,1,0,,1,1,0, 0,0,1,0,0, 0,0,1,0, 1,0,1,0,,0, 1,0,,1,0,0, 0,0,1,1,0,0, ,0,1,0, 1,0,1,0,0,0;d prnt()in ,x,0;

4、pnf(0,0);for(=1;i;i+)sit(pahi)cas 1:-;break;cse 2:x+;break;case 3 :y;a; cas :y;break; if(,x,);el printf(%d,%d found!n,y);vo ry1(int x,int )axy.vt=;if(axy.food)a.food0;print();k+;if(axy.u) path1;/方向为1-;axyown=0;if(!ay.vist)ry1(x,y);axdown;x+;f(axdon) ah=2;/方向为2x+;xy.p=;i(!axy.viit)ty(x,y);a.u=;x-;if(

5、ax.lef)ak=3;/方向为y-;axyigt;if(!x.vsit)ty(x,y);axy.right=1;y+;f(xy.rght) thk=4;/方向为4+;axy.left=0;if(!axyvsit)try(,y);ayleft=1;y-;axyvist0;k-;void man()tr(0,); 深层次问题:找发现食物的更短路。#include stdi.#inclde);for(i=1;i=k;i+)switch(pathi)cs 1 :x-;rek;case2 :+;break;case :y-;bea; ce4 :y+;beak; if( ,x,);eleprint(%d

6、,d food!n,x,y);vodtry(int,int y)ax.vii=1;i(axy.oo& !fx)fx=k;prit();/axy.ood=0;f(axyfod& fxk)xy;print(nFound hotest oe); pnt();+;if(ay.p) patk1;/方向为x;axyown=0;(!ax.visit)t1(x,y);aydw=1;x+;if(x.own) pathk=2;/方向为+;axy.p0;if(!ay.vsi)try(,y);a.p=;x-;i(xy.eft)pth=;/方向为y-;axyight0;if(!ayt)try1(x,y);xy.iht=

7、1;+;i(axyrgt) athk=4;/方向为4y+;axy.lf=0;if(!axy.vit)try1(x,y);ay.t=1;y;axy.visit=0;k-;void mai()tr1(0,0); 最深层次问题:找发现食物的最短路。#include stdio.h#ice stlb.h #inclux x& p-y = y) reunp;p-nex; reurn ;void crateHe()had=(fodRd*)alloc(izeof(foRoa);head-ne=0;void crePathNo(int ,int y,nt )int i,pr;dRoa*p;p=sarchPat

8、(x,y);if(p=0)foodoad *p;=(fod *)malloc(seo(foodRad));pf-x=;pf-y=y;-;pr=(int*)mallc(sizeo(nt)*(k+1);p-r=r;for(i=;=k;i+)pri=pathi;pf-ext=;p=head;while(-next)p-next;pext=p;else if(p-k k)ree(p-);pr=(t *)allc(sizeof(i)(k+1);p-=pr;pk=k;for(i=;xt;i i,x,k;wie(p),y=0,=p-k;pintf(n0,0-);for(i1;iri)case :x-;bre

9、ak;case2 :+;bea; cse 3 :y-;brek; ase :y+;reak;if(i ,);ese intf(%d,%d fod!n,x,y);p=p-nxt;void try1(itx,int y)axy.vi=1;i(axy.ood)craePathNoe(,y,k);k+;i(ax.up) pathk=1;/方向为1x-;axy.do=0;i(!axy.vi)r1(x,y);y.down=1;+;if(a.down) a=;/方向为2+;ayp=0;f(!axy.vist)ry1(x,y);ax.up=1;x-;f(xy.left) pathk=3;/方向为3y-;axy.ight;if(!y.isit)tr(x,);axy.right=1;y+;if(a.right) thk=4;/方向为4+;xlet0;if(!axy.vsit)try1(x,y);xy.left=1;-;ax.visit=0;k-;vd main() createad();ty1(0,);rint();

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!