ToB企服应用市场:ToB评测及商务社交产业平台

标题: 扫雷游戏 [打印本页]

作者: 羊蹓狼    时间: 2023-11-11 09:18
标题: 扫雷游戏
一、扫雷游戏分析关键步骤:两个二维数组的大小为11*11,但实际上操作的只有中心的9*9的棋盘,创建另外两行的原因是方便统计一个坐标周围3*3的雷的个数
1.创建两个二维数组一个存放布置好的雷(1号),另外一个存放空的棋盘(2号)
2.选手选出来的坐标传到1号棋盘上对坐标进行分析如果是雷就返回被炸死了,不是雷就算一下这个坐标周边一圈
有多少雷,并在2号棋盘上显示出来
结束标志:没被炸死,且棋盘上还剩下雷的个数的位置没被探索
二、代码
game.h
  1. #define _CRT_SECURE_NO_WARNINGS 1
  2. #include <stdio.h>
  3. #include <stdlib.h>
  4. #include <time.h>
  5. #define ROW 9
  6. #define COL 9
  7. #define ROWS ROW+2
  8. #define COLS COL+2
  9. #define MINES 10
  10. //初始化
  11. void InitBoard(char board[ROWS][COLS], int rows, int cols, char ch);
  12. //展示
  13. void DisPlay(char board[ROWS][COLS], int row, int col);
  14. //布置雷
  15. void LayMine(char board[ROWS][COLS], int row, int col);
  16. //开始游戏
  17. void Play(char mine[ROWS][COLS], char show[ROWS][COLS], int row, int col);
复制代码
game.c
[code]#define _CRT_SECURE_NO_WARNINGS 1#include "game.h"//初始化void InitBoard(char board[ROWS][COLS], int rows, int cols, char ch){    for (int i = 0; i < rows; i++)    {        for (int j = 0; j < cols; j++)        {            board[j] = ch;        }    }}//展示void DisPlay(char board[ROWS][COLS], int row, int col){    for (int i = 0; i




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4