·前言
扫雷游戏,每一个人或多或少都玩过,那么如何使用C语言来制作一个简易9*9的扫雷游戏呢?
·扫雷游戏制作前的思考
在编写代码之前,让我们思考一下,如果制作一个简易的扫雷游戏我们需要有些什么。不难想到我们需要:
1.首先要判断游戏的开始
2.其次我们需要制作一个表格来存放我们的数据(那么就很容易想到我们需要使用二维数组来制作一个表格)。
3.顺其自然我们需要将数据填入表格,那么就涉及二维数组遍历填入(二维数组的初始化)。
4.扫雷扫雷,所以需要将雷放入随机放入建立好的二维数组中。
5.输入坐标后判断坐标位置是否为雷,若不是则显示周围有多少给雷,并显示给玩家。
大致的思路梳理好之后就是如何使用代码实现。(由于代码量较多,我们不妨将其放入多个.c文件中来完成,并使用函数来完成)
·扫雷游戏的代码实现
(1)判断游戏的开始
我们应先让玩家判断游戏的开始或结束,并且当玩家玩玩一轮后判断是否需要重新下一把游戏,那么就需要使用循环语句:
代码如上图所示。
(2)表格的创建并初始化
当玩家判断完要开始扫雷游戏后,我们就需要制作表格来放置我们的数据,由于是表格,我们率先就想到使用二维数组来放置数据(我们需要创建两个二维数组,一个用来判断是否是雷,另一个用来表示输出给玩家看的表格):
上图中的ROWS和COLS分别为表格的行与列(ROWS和COLS都为11)
注释:为什么是11,而不是9呢,原因是之后我们会判断坐标格周围的雷的数量,如果坐标在9*9表格的边界时,就会发生越界。
这样我们就制作好了我们存放数据的表格了。
由于要将表格内容显示给玩家知晓,那么我们就需要打印表格内容。
(3)打印表格
由于要让玩家知晓表格内容,我们就需要打印表格
结果如图所示。
(4)将雷放入
我们需要将雷随机的放入表格中,那么就涉及到了随机输入
其中的LEI=10;COL和ROW都为9,输出结果如图所示。
(5)判断是否为雷,若不是则显示周围有多少给雷,并显示给玩家
首先我们先判断如果不是雷,则周围有多少个雷:
代码如上图所示。
其次我们在判断是否为雷,如果成功排掉所以的雷,则游戏结束:
代码如上图所示。
·头文件的声明
可能会有人问,你写了这么多的代码所使用的头文件都在哪里啊?我们的思路是将所有声明和头文件放入一个自定义的头文件中(saoleigame.h中)
这样我们只需要包含此自定义的头文件,就可以满足所需。省时又省力
·扫雷游戏的代码主要实现
·总结
扫雷游戏教会我们如何使用函数将一个大的工程拆分成许多小的工程来完成,并且使用多.c文件来构成一个总的项目(如果都放在一个.c文件中,则会显得冗长且混乱)。