推箱子编码c语言,C语言推箱子代码

《C语言推箱子代码》由会员分享,可在线阅读,更多相关《C语言推箱子代码(4页珍藏版)》请在人人文库网上搜索。

1、include#includeint i,j,steps = 0,gk = 1;char command,t,m = 0,n = 0;int map_1811,map811 = 0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,1,0,0,1,1,1,1,1,0,0,0,1,0,0,6,0,0,4,1,0,0,0,1,3,0,2,0,0,4,1,0,0,0,1,0,0,1,1,1,1,1,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;int map_2811 = 0,0,0,1,1,1,1,0,0,0,。

2、0,0,0,0,1,4,0,1,0,0,0,0,1,1,1,1,0,0,1,1,0,0,0,1,0,0,0,3,2,0,1,0,0,0,1,0,1,1,0,0,0,1,0,0,0,1,0,6,0,0,0,0,1,1,0,0,1,1,1,1,0,0,0,4,1,0,0,0,0,0,1,1,1,1,1,1,0,0;int map_3811 = 0,0,0,1,1,1,1,0,0,0,0,0,0,0,1,4,4,1,0,0,0,0,1,1,1,1,0,0,1,1,0,0,0,1,0,0,0,0,0,0,1,0,0,0,1,0,0,0,0,0,0,1,1,0,0,1,1,1,0,1,6,2,0,1,0。

3、,0,0,0,1,0,0,3,0,0,1,0,0,0,0,1,1,1,1,1,1,1,0,0;typedef struct positionint x;int y;location;location agg3;/全部通过void clearance()if(mapagg1.xagg1.y = 5&mapagg2.x + nagg2.y + m = 5&gk = 3)printf( 你赢了! n); system(pause);exit(0); /判断是否通过void control_adopt() if(mapagg1.xagg1.y = 5&mapagg2.x + nagg2.y + m =。

4、 5) if(gk != 3)for(i = 0;i 8;i+)for(j = 0;j 11;j+)mapij = map_2ij; map_2ij = map_3ij; map_1ij = mapij;gk+;steps = 0; /重新开始void control_reset(char reset_1) if(reset_1 = f) for(i = 0;i 8;i+)for(j = 0;j 11;j+) mapij = map_1ij;steps = 0; /结束void control_end(char end_0) if(end_0 = t)exit(0);/ 控制方向 + 箱子堵住。

5、陷阱void control_direction(char direction_)if(direction_ = d|direction_ = w|direction_ = a|direction_ = s)if(direction_ = d) m = 1;if(direction_ = a) m = -1;if(direction_ = w) n = -1;if(direction_ = s) n = 1;if(agg0.x + n = agg1.x&(agg0.y + m) = agg1.y&mapagg1.x nagg1.y + m != 1&mapagg1.xagg1.y != 5) 。

6、if(mapagg1.x + nagg1.y + m = 4) mapagg1.xagg1.y = 0; mapagg1.x + nagg1.y + m = 5; agg1.y = agg1.y + m;agg1.x = agg1.x + n;elset = mapagg1.x + nagg1.y + m;mapagg1.x + nagg1.y + m = mapagg1.xagg1.y; mapagg1.xagg1.y =t;agg1.y = agg1.y + m;agg1.x = agg1.x + n;/第二个箱子的判断条件if(agg0.x + n = agg2.x&(agg0.y + 。

7、m) = agg2.y&mapagg2.x nagg2.y + m != 1&mapagg2.xagg2.y != 5) if(mapagg2.x + nagg2.y + m = 4) mapagg2.xagg2.y = 0; mapagg2.x + nagg2.y + m = 5;agg2.y = agg2.y + m;agg2.x = agg2.x + n;elset = mapagg2.x + nagg2.y + m;mapagg2.x + nagg2.y + m = mapagg2.xagg2.y; mapagg2.xagg2.y =t;agg2.y = agg2.y + m;agg2。

8、.x = agg2.x + n; if(mapagg0.x + nagg0.y + m = 0)t = mapagg0.x + nagg0.y + m;mapagg0.x + nagg0.y + m = mapagg0.xagg0.y; mapagg0.xagg0.y = t;agg0.y = agg0.y + m; agg0.x = agg0.x + n; steps+;m = 0;n = 0;/输出 ,寻找 1,2,3void control_output()printf( 关卡 %d: n,gk); printf( 步数: %dn,steps); for(i = 0;i 8;i+)for。

9、(j = 0;j 11;j+)if(mapij = 1) printf( );if(mapij = 0) printf( );if(mapij = 2)printf( ); agg1.x = i; agg1.y = j;if(mapij = 3)printf(” O ”);agg0.x = i; agg0.y = j;if(mapij = 4)printf( );if(mapij = 5)printf( );if(mapij = 6) printf( ); agg2.x = i; agg2.y = j;printf(n); printf(w,a,s,d 控制方向, t 退出游戏, f 重新开始。

10、! n);/输入指令void input_command()while(1) scanf(%c,&command);if(command = w|command = a|command = s|command = d|command = t|command = f)break; main()for(i = 0;i 8;i+)for(j = 0;j 12;j+) map_1ij = mapij; while(1) control_output(); input_command(); control_direction(command); control_reset(command); control_end(command); control_adopt(); system(cls); clearance();【本文档内容可以自由复制内容或自由编辑修改内容期待你的好评和关注,我们将会做得更好。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值