数组和函数实现扫雷游戏

一   扫雷游戏的功能说明

• 使⽤控制台实现经典的扫雷游戏

• 游戏可以通过菜单实现继续玩或者退出游戏

• 扫雷的棋盘是9*9的格⼦

• 默认随机布置10个雷

• 可以排查雷 ◦ 如果位置不是雷,就显⽰周围有⼏个雷 ◦ 如果位置是雷,就炸死游戏结束 ◦ 把除10个雷之外的所有雷都找出来,排雷成功,游戏结束 游戏的界⾯

二  游戏的分析和设计

 数据结构的分析 扫雷的过程中,布置的雷和排查出的雷的信息都需要存储,所以我们需要⼀定的数据结构来存储这些 信息。 因为我们需要在9*9的棋盘上布置雷的信息和排查雷,我们⾸先想到的就是创建⼀个9*9的数组来存放 信息。

那如果这个位置布置雷,我们就存放1,没有布置雷就存放0.

假设我们点击(6,3)这个坐标的同时,就会排查以这个坐标为中心的周围8个方格,统计周围地雷的个数。

当我们点击(7,9)这个坐标的同时,就会排查以这个坐标为中心的周围8个方格,统计周围地雷的个数,统计周围雷的个数时,最下⾯的三 个坐标就会越界,为了防⽌越界,我们在设计的时候,给数组扩⼤⼀圈,雷还是布置在中间的9*9的坐 标上,最外围的⼀圈不布置雷就⾏,这样就解决了越界的问题。所以我们将存放数据的数组创建成11*11 是⽐较合适。所对应的数组如下图所示

因为扫雷游戏所需要的代码对于初学者来说相对比较复杂,应该分为几个头文件和源文件来存放较为合适

在扫雷游戏项目的建立之前我们要预设建立一个头文件和两个源文件,比如:text.c  game.c   game.h等等

text.c——实现扫雷游戏的测试

game.c——实现游戏函数的实现

game.h——实现游戏函数的声明

在game.h文件中

源文件的设置如下,扫雷游戏需要事先布置雷,所以要先设置生成随机数的函数为之后雷的随机生成做准备才能保证扫雷游戏的顺利进行

利用生成随机数的函数来生成雷的位置,如果这个位置在棋盘内还没有布置雷,那么就会给这个位置的数组赋值为“1”来表示这个位置已经生成雷。

text.c文件中

当我们按下ctrl+f5快捷键运行代码时

当我们输入1时表示开始游戏,反之输入0时是退出游戏。当输入除了0和1之外的值时会显示输入错误请重新输入,

输入1之后就会跳转到这个界面,就可以开始输入坐标来开始排雷

输入(2,1)时,棋盘的下方也会出现雷所相对应的位置。当这个方格里的数字时正好是1(1正是被布置的雷)时就会显示你被炸死了,游戏结束

当把雷全部排完时则会显示排雷成功,并且打印棋盘情况。

小结

1. 对于要基本实现扫雷的简单玩法,我们要对之前学过的知识点掌握的相对比较熟悉并且能够综合运用。

2.  大致掌握循环语句,选择语句等基本的嵌套循环,和定义。以及二维数组的应用和,函数的声明及调用是能否完成的关键。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值