版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第C语言系列之推箱子游戏本文实例为大家分享了C语言系列之推箱子游戏的具体代码,供大家参考,具体内容如下
输入WSAD控制行走,只需要把一个方向的代码写好了,剩下的是三个方向就是复制粘贴和简单的修改就可以了。
#includestdio.h
#includeconio.h//键盘输入函数库
//0:空地1:墙2:箱子要放的位置5:人与星号重叠5:箱子与星号重叠3:人+-34:箱子:+-4
intmap[10][10]={1,1,1,1,1,1,1,1,1,1,
1,0,0,0,0,0,2,0,0,1,
1,0,0,3,4,0,0,0,0,1,
1,0,0,1,1,0,0,0,0,1,
1,0,1,0,0,0,1,0,0,1,
1,0,0,4,0,0,1,0,0,1,
1,0,0,0,0,0,0,0,0,1,
1,0,2,0,0,0,0,0,0,1,
1,0,0,0,0,0,0,0,0,1,
1,1,1,1,1,1,1,1,1,1,
intflag=0;
voidPrintMap()
inti,j;
for(i=0;ii++)
for(j=0;jj++)
switch(map[i][j])
//0:空地1:墙2:箱子要放的位置3:人4:箱子5:箱子到达目的地
case0:printf("");break;
case1:printf("■");break;
case2:printf("☆");break;
case3:printf("♀");break;
case4:printf("□");break;
case5:printf("★");break;
default:
break;
printf("\n");
voidPlayGame()
intnum=0;
chartemp;
temp=getch();//键盘输入无回显函数
staticintx=2,y=3;
switch(temp)
case'W':
if(map[x-1][y]==0)//如果下一个的地方为空地
if(flag==0)
map[x-1][y]=3;
map[x][y]=0;
x--;
else
map[x-1][y]=3;
map[x][y]=2;
x--;
flag=0;
elseif(map[x-1][y]==2)//如果下一个的地方为箱子存放地
map[x-1][y]=3;
map[x][y]=0;
x--;
if(map[x-1][y]==0)
flag=1;
elseif(map[x-1][y]==4)//下一个去的地方有箱子
if(map[x-2][y]==0)//x-2是空地时
if(flag==0)
map[x-2][y]=4;
map[x-1][y]=3;
map[x][y]=0;
x--;
else
map[x-2][y]=4;
map[x-1][y]=3;
map[x][y]=2;
x--;
flag=0;
elseif(map[x-2][y]==2)//x-2是箱子的存放地
map[x-2][y]=5;
map[x-1][y]=3;
map[x][y]=0;
x--;
elseif(map[x-1][y]==5)//下一个去的地方是已经在存放点的箱子
if(map[x-2][y]!=1)
map[x-2][y]=4;
map[x-1][y]=3;
map[x][y]=0;
x--;
if(map[x-2][y]!=1)
flag=1;
break;
case'S':
if(map[x+1][y]==0)//如果下一个的地方为空地
if(flag==0)
map[x+1][y]=3;
map[x][y]=0;
x++;
else
map[x+1][y]=3;
map[x][y]=2;
x++;
flag=0;
elseif(map[x+1][y]==2)//如果下一个的地方为箱子存放地
map[x+1][y]=3;
map[x][y]=0;
x++;
if(map[x+1][y]==0)
flag=1;
elseif(map[x+1][y]==4)//下一个去的地方有箱子
if(map[x+2][y]==0)//x-2是空地时
if(flag==0)
map[x+2][y]=4;
map[x+1][y]=3;
map[x][y]=0;
x++;
else
map[x+2][y]=4;
map[x+1][y]=3;
map[x][y]=2;
x++;
flag=0;
elseif(map[x+2][y]==2)//x-2是箱子的存放地
map[x+2][y]=5;
map[x+1][y]=3;
map[x][y]=0;
x++;
elseif(map[x+1][y]==5)//下一个去的地方是已经在存放点的箱子
if(map[x+2][y]!=1)
map[x+2][y]=4;
map[x+1][y]=3;
map[x][y]=0;
x++;
if(map[x+2][y]!=1)
flag=1;
break;
case'A':
if(map[x][y-1]==0)//如果下一个的地方为空地
if(flag==0)
map[x][y-1]=3;
map[x][y]=0;
y--;
else
map[x][y-1]=3;
map[x][y]=2;
y--;
flag=0;
elseif(map[x][y-1]==2)//如果下一个的地方为箱子存放地
map[x][y-1]=3;
map[x][y]=0;
y--;
if(map[x][y-1]==0)
flag=1;
elseif(map[x][y-1]==4)//下一个去的地方有箱子
if(map[x][y-2]==0)//x-2是空地时
if(flag==0)
map[x][y-2]=4;
map[x][y-1]=3;
map[x][y]=0;
y--;
else
map[x][y-2]=4;
map[x][y-1]=3;
map[x][y]=2;
y--;
flag=0;
elseif(map[x][y-2]==2)//x-2是箱子的存放地
map[x][y-2]=5;
map[x][y-1]=3;
map[x][y]=0;
y--;
elseif(map[x][y-1]==5)//下一个去的地方是已经在存放点的箱子
if(map[x][y-2]!=1)
map[x][y-2]=4;
map[x][y-1]=3;
map[x][y]=0;
y--;
if(map[x][y-2]!=1)
flag=1;
break;
case'D':
if(map[x][y+1]==0)//如果下一个的地方为空地
if(flag==0)
map[x][y+1]=3;
map[x][y]=0;
y++;
else
map[x][y+1]=3;
map[x][y]=2;
y++;
flag=0;
elseif(map[x][y+1]==2)//如果下一个的地方为箱子存放地
map[x][y+1]=3;
map[x][y]=0;
y++;
if(map[x][y+1]==0)
flag=1;
elseif(map[x][y+1]==4)//下一个去的地方有箱子
if(map[x][y+2]==0)//x-2是空地时
if(flag==0)
map[x][y+2]=4;
map[x][y+1]=3;
map[x][y]=0;
y++;
else
map[x][y+2]=4;
map[x][y+1]=3;
map[x][y]=2;
y++;
flag=0;
elseif(map[x][y+2]==2)//x-2是箱子的存放地
map[x][y+2]=5;
map[x][y+1]=3;
map[x][y]=
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030佛手配方市场分析行业现状发展供应投资评估规划研究
- 2025-2030人工智能算法在腐蚀测试数据建模中的应用场景与商业化落地路径
- 2025-2030云计算服务行业市场竞争分析及投资机会评估规划研究机构
- 2025-2030云南省生物多样性保护行业市场现状供需分析及投资评估规划分析研究报告
- 2025-2030乍得能源领域市场前景预测及石油生产与煤炭资源开发研究报告
- 2025年辽宁省事业单位面试真题及答案解析
- 承包人建议书
- 职业病防治计划实施流程与标准
- 软件开发项目需求分析及进度安排
- 企业财务预算编制与成本控制实战案例
- 2026广西北海市从“五方面人员”中选拔乡镇领导班子成员25人笔试备考试题及答案解析
- 2026广西北海市产业投资有限责任公司招聘4人备考题库带答案详解(综合卷)
- 2026年滁州城市职业学院单招综合素质考试题库含答案详细解析
- 2026年四川省南充市辅警人员招聘考试试题解析及答案
- 博物馆意识形态责任制度
- (一模)南昌市2026届高三年级三月测试语文试卷(含答案解析)
- 2026四川泸州高新控股旗下泸州产城招引商业管理有限公司人员招聘4人考试参考题库及答案解析
- 全国计算机等级考试二级Python编程真题及答案解析(共10套真题)
- GB/T 19812.3-2017塑料节水灌溉器材第3部分:内镶式滴灌管及滴灌带
- GB/T 11363-2008钎焊接头强度试验方法
- 110kV瓮北变110kV间隔扩建工程施工组织设计
评论
0/150
提交评论