该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

该推箱子拥有对成绩的记录功能,因此,请挑战自己的最少步数吧!

源代码如下:

#include

#include

int main()

{

system("color 0a");

char a[9][11]={" ###### ",

" # ###",

" # o #",

"### o ## #",

"#*** o #",

"#***o#o ##",

"#### # o #",

" # s #",

" #######"},b,c;

int i,e,f=0,x=7,y=6;

FILE *Re;

while(1)

{

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

{

puts(a[i]);

}

printf("你已经走了%d步\n",f);

if (a[4][1]=='@' && a[4][2]=='@' && a[4][3]=='@' && a[5][1]=='@' && a[5][2]=='@' && a[5][3]=='@')

break;

b=getch();

if (b=='s')

{

if (a[x+1][y]=='o' && a[x+2][y]!='#' && a[x+2][y]!='o' && a[x+2][y]!='@')

{

a[x+2][y]='o';

a[x+1][y]='s';

a[x][y]=' ';

x++;

f++;

}

if (a[x+1][y]=='@' && a[x+2][y]!='#' && a[x+2][y]!='o' && a[x+2][y]!='@')

{

a[x+2][y]='o';

a[x+1][y]='s';

a[x][y]=' ';

x++;

f++;

}

if (a[x+1][y]!='o' && a[x+1][y]!='#' && a[x+1][y]!='@')

{

a[x+1][y]='s';

a[x][y]=' ';

x++;

f++;

}

}

if (b=='w')

{

if (a[x-1][y]=='o' && a[x-2][y]!='#' && a[x-2][y]!='o' && a[x-2][y]!='@')

{

a[x-2][y]='o';

a[x-1][y]='s';

a[x][y]=' ';

x--;

f++;

}

if (a[x-1][y]=='@' && a[x-2][y]!='#' && a[x-2][y]!='o' && a[x-2][y]!='@')

{

a[x-2][y]='o';

a[x-1][y]='s';

a[x][y]=' ';

x--;

f++;

}

if (a[x-1][y]!='o' && a[x-1][y]!='#' && a[x-1][y]!='@')

{

a[x-1][y]='s';

a[x][y]=' ';

x--;

f++;

}

}

if (b=='a')

{

if (a[x][y-1]=='o' && a[x][y-2]!='#' && a[x][y-2]!='o' && a[x][y-2]!='@')

{

a[x][y-2]='o';

a[x][y-1]='s';

a[x][y]=' ';

y--;

f++;

}

if (a[x][y-1]=='@' && a[x][y-2]!='#' && a[x][y-2]!='o' && a[x][y-2]!='@')

{

a[x][y-2]='o';

a[x][y-1]='s';

a[x][y]=' ';

y--;

f++;

}

if (a[x][y-1]!='o' && a[x][y-1]!='#' && a[x][y-1]!='@')

{

a[x][y-1]='s';

a[x][y]=' ';

y--;

f++;

}

}

if (b=='d')

{

if (a[x][y+1]=='o' && a[x][y+2]!='#' && a[x][y+2]!='o' && a[x][y+2]!='@')

{

a[x][y+2]='o';

a[x][y+1]='s';

a[x][y]=' ';

y++;

f++;

}

if (a[x][y+1]=='@' && a[x][y+2]!='#' && a[x][y+2]!='o' && a[x][y+2]!='@')

{

a[x][y+2]='o';

a[x][y+1]='s';

a[x][y]=' ';

y++;

f++;

}

if (a[x][y+1]!='o' && a[x][y+1]!='#' && a[x][y+1]!='@')

{

a[x][y+1]='s';

a[x][y]=' ';

y++;

f++;

}

}

if (a[4][1]=='o')

a[4][1]='@';

if (a[4][2]=='o')

a[4][2]='@';

if (a[4][3]=='o')

a[4][3]='@';

if (a[5][1]=='o')

a[5][1]='@';

if (a[5][2]=='o')

a[5][2]='@';

if (a[5][3]=='o')

a[5][3]='@';

if (a[4][1]!='@' && a[4][1]!='s')

a[4][1]='*';

if (a[4][2]!='@' && a[4][2]!='s')

a[4][2]='*';

if (a[4][3]!='@' && a[4][3]!='s')

a[4][3]='*';

if (a[5][1]!='@' && a[5][1]!='s')

a[5][1]='*';

if (a[5][2]!='@' && a[5][2]!='s')

a[5][2]='*';

if (a[5][3]!='@' && a[5][3]!='s')

a[5][3]='*';

system("cls");

}

puts("you are will!");

Re=fopen("Re.txt","r");

if (fscanf(Re,"%d",&e)>0)

{

if (f

{

fclose(Re);

Re=fopen("Re.txt","w");

fprintf(Re,"%d",f);

fclose(Re);

puts("新的记录已经产生了!");

}

if (f==e)

{

fclose(Re);

puts("与高手平举平起!");

}

if (f>e)

{

fclose(Re);

puts("请继续努力!");

}

}

else

{

fclose(Re);

Re=fopen("Re.txt","w");

fprintf(Re,"%d",f);

fclose(Re);

puts("新的记录已经产生了!");

}

system("pause");

return 0;

}

啊哈c语言推箱子小游戏,啊哈C入门版学完了,现发推箱子源代码~相关推荐

  1. javafx 推箱子小游戏object类_突破LeetCode Hard模式之《推箱子》

    导读:算法哥好久没分享有趣的算法题了,有点寂寞空虚冷,今天看到一道似曾相识的题目,而且难度是hard模式,勾起了算法哥的征服欲.特分享之! 题目描述 「推箱子」是一款风靡全球的益智小游戏,玩家需要将箱 ...

  2. c++ 小游戏_C/C++编程笔记:C语言写推箱子小游戏,大一学习C语言练手项目

    C语言,作为大多数人的第一门编程语言,重要性不言而喻,很多编程习惯,逻辑方式在此时就已经形成了.这个是我在大一学习 C语言 后写的推箱子小游戏,自己的逻辑能力得到了提升,在这里同大家分享这个推箱子小游 ...

  3. 用C语言实现推箱子小游戏基础程序plus

    目录 设计一个简单的推箱子游戏 功能设计要求: 代码实现 数据定义头文件data_def.h 窗口设置头文件WindowsSet.h WindowsSet.cpp 上移函数 矩阵旋转函数 游戏帧 菜单 ...

  4. 大一C语言课程设计之推箱子小游戏

    大一C语言课程设计之推箱子小游戏 先看一下效果 因为技术原因,开发说明没有加进去 按任意键以后 )] 同时响起来 你笑起来真好看的bgm 胜利界面会弹出一个弹出框 私信我或者加我qq:65245534 ...

  5. c 语言推箱子vs,C语言推箱子小游戏教程

    作者GitHub-Pages个人主页 本教程GitHub-Pages链接 本教程百度云下载地址 本教程编写于2016/11/22 Dawson Lee edited this page on Beij ...

  6. C语言实现推箱子小游戏

    一.设计目的 用简单的C语言知识制作的推箱子游戏,通过上下左右键将所有箱子移动到目标位置. 2.让我们更好地了解和巩固C语言知识,并实际运用,同时运用一些不太常见的知识点. 二.功能描述 1.模块功能 ...

  7. 控制台推箱子小游戏C语言

    自己开发的C语言控制台推箱子小游戏,基于二维数组实现,功能不多但是游戏整体较为完整,因为技术有限,所以代码暂未优化且整体显得较为臃肿,整体架构简单,代码全自主设计编写,仅作交流学习,还望大佬多多指点. ...

  8. 简单的c语言推箱子程序,完整版本的推箱子小游戏,最简单的纯C语言打造

    /*推箱子小游戏 1.定义绘制样式 用二维数组的方式 2.绘制图像 3.找出当前位置 4.逻辑判断,制造动作 根据数学xy轴的规律,这里使用ij 上移,行轴上升,行数减少 下移,行数下降,函数增加 左 ...

  9. c#推箱子小游戏代码_推箱子小游戏V1.0制作

    小游戏实践 推箱子简易版 大家好,我是努力学习争取成为优秀的Game Producer的路人猿,今天来一起做一个推箱子的简易版本V1.0!下面跟我一起做吧~ 我们用到的软件如下: 编辑类 Visual ...

最新文章

  1. php获取全部post_php post获取所有提交
  2. SAP MM MIGO + 311 针对预留单做转库不能修改目的地存储地点!
  3. matlab分割字,matlab字符分割方法
  4. 《编码的奥秘》---学习编程一年半的体会
  5. mysql 实现按首字母字典序排序以及根据字段汉字首字母搜索
  6. python 梯度下降_Python解释的闭合形式和梯度下降回归
  7. Linux ping的原理与实现
  8. android搜索框功能实现_巧用 Trie 树,实现搜索引擎关键词提示功能
  9. 正则表达式超级生成工具 Regulator
  10. Spark的分布式存储系统BlockManager全解析
  11. 附加数据库后登陆报错
  12. .net byte转java byte_「Java知识收集整理」Java语法的基础
  13. EtherCAT主站SOEM函数详解---- ecx_statecheck
  14. 手把手教你用C语言实现求质数(素数),5大方法任君挑选
  15. 个人简历网站模板源码
  16. 【Git 问题及解决方案】gitee fatal: sha1 file ‘<stdout>‘ write error: Broken pipe(待更)
  17. 计算机启动进入不了桌面图标,电脑开机不显示桌面图标怎么办,开机桌面图标不显示解决办法...
  18. java LPT1_com1/lpt1/prn/nul 木马后门处理方法集合
  19. 证券行业的数字化转型:数字化企业的特征和创新案例
  20. 前端开发和后端开发的区别

热门文章

  1. 工业级光纤收发器与光端机各自的作用及区别介绍
  2. RS-232转RS-485/422串口转换器产品介绍
  3. [渝粤教育] 中国地质大学 高层建筑施工 复习题
  4. 【渝粤教育】电大中专品牌管理与推广 (2)作业 题库
  5. 云智能遥控开关设备再物联网领域的应用:智能养殖高效、生态、安全!
  6. oracle 测试试题,oracle试题
  7. matlab 进度条/waitbar 显示运行进度
  8. python怎么使用预训练的模型_Keras使用ImageNet上预训练的模型方式
  9. 管理任务执行-如何排任务优先级
  10. Spring----最小化Spring配置