软件风向标,重度软件行业发展门户!

文章更新 | 热门文章
您的位置: 首页  →  攻略 → 《推箱子攻略 推箱子过关技巧

推箱子攻略 推箱子过关技巧

2023-06-05 09:36:45      小编:      我要评论

C语言编程游戏真的练习小项目

来练习一下吧!(扣1送书和例题资料)


直接上源码

#include<stdio.h>

#include<stdlib.h>

#include<getch.h>


int main(int argc,const char*argv[])

{

int cut=0;

int a[8][8]={

{0,0,3,3,3,3,3,0,0

{0,0,3,5,5,3,0,0

{0,0,3,0,5,3,0,0

{0,3,0,0,4,5,3,0}

{3,3,0,4,0,0,3,3},

{3,0,0,3,4,0,0,3,4,0,3,0,3,0,3,0,3,4,4,0,0,3,4,0,3,0,3,4,0,3,0,3,3,0,3,3,0,3,3,0,3,3,3,3,3,4,4,4,4,4,4,0,4,0,0,3,4,0,3,4,0,3,4,4,0,0,3,0,3,0,3,0,3,0,3,0,3,0,3,0,3,3,0,3,3,3,3,4,4,4,4,0,3,4,0,3,4,0,3,4,0,3,4,0,3,4,0,3,0,3,0,3,0,3,3,0,3,3,3,0,3,3,3,3,3,3,3,3,3,3,3,3,4,4,4,4,4,4,4,4,4,4,4,4,4,4,0,0,0,0,0,3,3,0,3,3,3,3,0,3,3,3,3,3,3,3,0,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,

{3,0,0,2,0,0,0,0,0,3},

{3,3,3,3,3,3,3,3,3,3,3};

int x=6,y=3;

for(;;)

{

int cunt=0;

system("clear");

for(int i=0;i<8;i )

{

for(int j=0;j<8;j )

{

if(a[i][j]==9)

{

cunt ;

}

switch(a[i][j])

{

case 0:printf(" ");break;

case 2:printf("@ ");break;//人

case 3:printf("# ");break;//墙

case 4:printf("$ ");break;//箱子

case 5:printf("o ");break;//目标位置

case 7:printf("@ ");break;

case 9:printf("$ ");break;

}

}

printf("

");

}

if(4==cunt)

{

printf("成功

步数:%d",cut);

return 0;

}

///根据数据大小判断当前坐标的情况

switch(getch())

{

case 183:

if(0!=x&&3==a[x-1][y])

{

a[x][y]=2;

}

else if(5==a[x-1][y]||0==a[x-1][y])

{

a[x][y]-=2;

a[x-1][y] =2;

x--;

cut ;

}

else if((5==a[x-2][y]||0==a[x-2][y])&&(4==a[x-1][y]||9==a[x-1][y]))

{

a[x-2][y] =4;

a[x-1][y]-=4;

a[x-1][y] =2;

a[x][y]-=2;

x--;cut ;

}break;

case 184:

if(0!=x&&3==a[x 1][y])

{

a[x][y]=2;

}

else if((5==a[x 1][y])||(0==a[x 1][y]))

{

a[x][y]-=2;

a[x 1][y] =2;

x ;cut ;

}

else if((5==a[x 2][y]||0==a[x 2][y])&&(4==a[x 1][y]||9==a[x 1][y]))

{

a[x 2][y] =4;

a[x 1][y]-=4;

a[x 1][y] =2;

a[x][y]-=2;

x ;cut ;

}break;

case 185:

if(0!=x&&3==a[x][y 1])

{

a[x][y]=2;

}

else if(5==a[x][y 1]||0==a[x][y 1])

{

a[x][y]-=2;

a[x][y 1] =2;

y ;cut ;

}

else if((0==a[x][y 2]||5==a[x][y 2])&&(4==a[x][y 1]||9==a[x][y 1]))

{

a[x][y 2] =4;

a[x][y 1]-=4;

a[x][y 1] =2;

a[x][y]-=2;

y ;cut ;

}break;

case 186:

if(0!=x&&3==a[x][y-1])

{

a[x][y]=2;

}

else if(5==a[x][y-1]||0==a[x][y-1])

{

a[x][y]-=2;

a[x][y-1] =2;

y--;cut ;

}

else if((0==a[x][y-2]||5==a[x-1][y])&&(4==a[x][y-1]||9==a[x][y-1]))

{

a[x][y-2] =4;

a[x][y-1]-=4;

a[x][y-1] =2;

a[x][y]-=2;

y--;cut ;

}break;

}

}

}



加油??!

推箱子[共51款]

攻略[共175060款]

技巧[共13701款]

  • 发表评论
资讯排行 资讯中心 热门专区 软件评测
软件排行榜 软件攻略 软件下载 软件开测表
软件排行榜 软件礼包 软件下载 新软件测表
安卓排行榜 软件视频 软件下载
苹果排行榜