基础扫雷游戏的实现(升级版)

今天我将介绍,如何使用数组与函数的知识来实现 ,最基础的扫雷游戏的实现。话不多说,接下来我们直接进入正题!

1.扫雷游戏的分析:

1.1扫雷游戏的功能玩法

首先我们需要打印菜单,可以通过菜单选择进入游戏或者退出游戏

我们默认基础扫雷是9 * 9的格子,随机布置10个雷

可以输入坐标进行排雷

如果不是雷就显示周围有几个雷,如果是雷那么游戏失败,把10个雷的位置全部确定即为胜利。

游戏界面我们默认这个样子

 1.2游戏的设计

在扫雷的过程中,布置的雷以及扫雷过程中的信息都是要储存的,所以我们就需要用数据结构来储存信息。

由于是9 * 9的棋盘那么我们很自然的想到要用9 * 9的数组来进行数据的储存

正如上图,储存数据方式就是这样。当我们设计好棋盘并且,将数据储存之后呢,我们就需要进行扫雷,我们在确定好要排查的坐标后·,就需要统计此坐标周围雷的个数,并将其打印出来。直到将所有雷全部排除或者被雷炸死才能结束游戏。那么思路整理完成后我们便可以进行代码的实现。 

1.3数组的定义

在上面我们分析过,数据的储存需要 9 * 9的数组来实现,但当我们进行扫雷过程中对周围雷的个数进行统计时,边框上的数据不容易进行雷的统计,那么我们就可以将数组周围添加一圈0,这样统计数据时就不会有无法统计的数据出现。

那么我们定义的数据便是

int main[11][11] = {0}//用来存储布置的雷的信息

int show[11][11] = {0}//用来打印排雷的信息

1.4文件结构设计

为了使文件更好的实现,逻辑更加清晰我们可以设计三个文件:

test.c //文件中游戏的逻辑设计

game.c //文件中些游戏中函数的实现

game.h//文件中游戏需要的数据类型和函数声明 

2.扫雷游戏代码的实现:

2.1game.h 

 2.2 test.c 

2.3game.c 

以上就是我们今天的分享啦!

关于以后我们如何进行扫雷的升级。各位观众老爷,且听下回分解!!!

🌹🌹🌹🌹🌹 

11.01,对扫雷游戏的升级来啦!!!

玩过扫雷游戏的都知道,我们所写的基础版本的扫雷游戏只能实现对指定坐标进行周围雷的统计,而这种玩法难度相当大,极其依赖运气!不过这也是整蛊好友的必备神器哦😀😀😀,今天呢,我们就来让我们的扫雷更加完整。

就像上面的左边就是我们未升级的扫雷,而当我们进行了对扫雷游戏的升级后就是上面右边的情况 ,那么我们该如何去实现这一步呢?

首先我们要明白我们想要的是什么。我们想要的无非是将我们排查的坐标周围的一圈坐标一同进行排查,

就像上图中,我们要明白如果我们对4 4这个坐标进行排查的话,那么我们就要一同进行对4 4周围的坐标一同排查,并将周围雷的个数是零的,进行打印,直到出现周围有雷的坐标。,在图中我们可以很清楚的知道我们要排查的,就是以选定的坐标,为中心的3 *3的二维数组。那么我们首先需要对坐标进行判断是否合理,然后再进行对雷的统计 ,在进行函数的递归。理清楚思路之后我们便可以进行代码的编写。那么函数代码如下

通过使用这个函数呢,我们就可以进行扫雷的升级,来进行难度的降低,实现更为真正的扫雷!

那么我们今天的补充就到这里啦!希望对大家有所帮助! 

 

 

  • 4
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值