扫雷
创作不易,还请观众老爷耐心看完儿!
目录
1.扫雷框架
2.初始化棋盘
这是用户看到的棋盘,9*9大小,需要自己去排查雷
为了程序员更好地去控制扫雷,我们需要两个数组
- 程序员看的雷区数组 -- 里面存放着雷的位置 -- 11*11大小
- 用户看的展示数组 -- 全是*号,需要用户去排查 -- 11*11大小
使这两个数组一样大的原因:是为了使我们后面设计的接口函数更加兼容,即使展示的数组本质是11*11大小,但是我们打印的时候打印9*9就可以了
为了可以提高代码可维护性和兼容性,我们将数组的行数和列数,使用宏来替换
#define ROWS 11
#define COLS 11
#define ROW 9
#define COL 9
void InitBoard(char board[ROWS][COLS], int rows, int cols,char set)
{
for (int i = 0; i < rows; ++i)
{
for (int j = 0; j < cols; ++j)
{
board[i][j] = set;
}
}
}
我们将如果初始化的内容以字符的形式作为参数传进去,上述代码就可以很好地解决了兼容性,这一个函数可以解决雷区棋盘和展示用户的棋盘的初始化。
3.打印棋盘
打印棋盘大家可以充分发挥自己的艺术细胞,根据自己的喜好去设置棋盘的打印格式。下面博主提供两种。