【扫雷游戏】

一、首先简单逻辑构建:

1·建立头文件和源文件

在这里插入图片描述
game.h 是指:游戏相关的函数申明
game.c 是指:游戏相关的函数实现。
test.c 是指:游戏相关的逻辑

2、基本逻辑/思路:

在这里插入图片描述

在这里插入图片描述

二、game分析

1、布置雷(随机)
2、扫雷

这里以简单的扫雷做分析(9*9个格子)

在这里插入图片描述
如果你点出来是炸弹,说明你失败了,如果你点击格子,显示出来是一个数字,说明它周围有怎么多个雷:
在这里插入图片描述
点击出来是1,说明周围8个格子有一个是雷。

1、布置雷分析

当我们布置雷位置信息时,我们用坐标,即需要用到二维数组,假设我们以0表示安全,1表示该位置是雷,可是这时你会返现,格子里的数字是指它周围雷的数量,如果用1表示雷的话,就会与表示周围有多少雷的数字重合,就会不容易区分。

因此,我们可以采用其他,表示雷,比如: # 表示无雷,* 表示有雷,数字表示周围雷的个数,可是这样搞,信息过多,复杂。

在这里插入图片描述

所以,我们可以这样设置,布置两个数组,一个是放雷的信息,另一个是放排查雷的信息:
在这里插入图片描述
但是当我们统计边缘一列 / 一行时,会发现有越界的现象,因此我们写代码时(9 * 9个格子)可以写成11*11个格子,最后的一行和一列主要是为了防止越界,不放任何东西。我们在排查雷的信息时,还没有排查的位置我们可以放 * 表示,所以我们的两个数组都是字符数组。

三、写代码

不是雷的位置放 ‘ 0 ’;
是雷的位置放 ‘ 1 ’;
没有排查到雷的位置放 ‘ * ’。

1、先打印两个数组

在这里插入图片描述
在这里插入图片描述
上面这张图片,不要忘记在最前面几排还要加上#include"game.h"(我没有截到)

在这里插入图片描述
在这里插入图片描述

2、布置雷(SetMine)

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
每次布置的雷的位置是随机的。

3、排查雷(FindMine)

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

四、最后的代码:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

各位加油,不要放弃,以我的水平,我觉得这个挺难的(。•ˇ‸ˇ•。)
在这里插入图片描述

  • 18
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值