【C语言游戏】超详解扫雷游戏完整版,细节满满!!

【摘要】 目录
 
扫雷
扫雷游戏规则介绍
如何将扫雷游戏实现代码
基本思路
分步代码实现
创建和打印游戏菜单
初始化棋盘
打印棋盘
布置雷
排查雷
游戏主体——game()函数
总代码实现
game.h
test.c
game.c
总结

扫雷
实现扫雷的算法有很多种,我在这里给大家最详细的代码介绍以及思考方法,细节满满哦!!

扫雷游戏规则介…

目录

扫雷

扫雷游戏规则介绍

如何将扫雷游戏实现代码

基本思路

分步代码实现

创建和打印游戏菜单

初始化棋盘

打印棋盘

布置雷

排查雷

游戏主体——game()函数

总代码实现

game.h

test.c

game.c

总结


扫雷

实现扫雷的算法有很多种,我在这里给大家最详细的代码介绍以及思考方法,细节满满哦!!


扫雷游戏规则介绍

每个格子有两种状态,有地雷或者没有地雷。玩家点到地雷游戏结束,玩家标记出所有地雷游戏胜利。

每个没有地雷的格子点开后显示相邻8个格子里面存在地雷的数目,周边没有地雷则可以递归地打开与空相邻的方块;如果不幸触雷,则游戏结束。

如何将扫雷游戏实现代码

与上次三子棋游戏模块一致,分类创建:

game.h:相关游戏函数的声明,变量的宏定义等;

game.c:游戏相关函数的功能实现;

test.c:游戏的测试,游戏的主题体;


基本思路

1.创建和打印游戏菜单

2.创建两个棋盘数组,一个是布置雷的棋盘数组,一个是排查雷的棋盘数组

3.初始化两个棋盘,为了防止后期统计排查雷的个数出现矛盾,所以我这里把布置雷的那个棋盘全部初始为’0′,把排查雷的棋盘全部初始化为’*’

4.打印棋盘

5.布置雷,由电脑自主完成随机布置雷的个数,个数可以自己在头文件中定义

6.排查雷,在布置雷的数组里排查,如果是雷则打印被炸死,并退出游戏,打印排查雷的棋盘;如果不是雷,则统计雷的个数,是0则展开空白,不是0则将雷的个数传给排查雷的那个数组

7.判断输赢,如果空格的总的个数于行和列的乘积减去布雷的个数,则表示排雷成功


分步代码实现

创建和打印游戏菜单


void menu()
{
printf("**********************\n");
printf("******* 1.play *******\n");
printf("******* 0.exit *******\n");
printf("**********************\n");
}
int main()
{
int input = 0;
srand((unsigned int)time(NULL));//用于随机函数rand的调用
do
{
menu();
scanf_s("%d", &input);
switch (input)
{
case 1:
printf("扫雷游戏开始\n");
game();
break;
case 0:
printf("退出游戏\n");
break;
default:
printf("输入错误,请重新选择!\n");
}
} while (input);
return 0;
}

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享