#define _CRT_SECURE_NO_WARNINGS 1
#include "test.h"
void InitBoard(char board[ROWS][COLS], int rows, int cols, char set)
{
int i = 0;
int j = 0;
for (i = 0; i < rows; i++)
{
for (j = 0; j < cols; j++)
{
board[i][j] = set;
}
}
}
void DisplayBoard(char board[ROWS][COLS], int row, int col)
{
int i = 0;
int j = 0;
printf("-----------扫雷游戏-------------\n");
for (j = 0; j <= col; j++)
{
printf("%d ", j);
}
for (i = 0; i <= row; i++)
{
printf("%d ", i);
for (j = 0; j <= col; j++)
{
printf("%c ",board[i][j]);
}
printf("\n");
}
printf("-----------扫雷游戏-------------\n");
}
void SetMine(char board[ROWS][COLS], int row, int col)
{
int count = EASY_COUNT;
while (count)
{
int x = rand() % row + 1;
int y = rand() % col + 1;
if (board[x][y] == '0')
{
board[x][y] = '1';
count--;
}
}
}
int get_mine_count(char board[ROWS][COLS], int x, int y)
{
return (board[x - 1][y - 1] + board[x - 1][y] + board[x - 1][y + 1]
+ board[x][y - 1] + board[x][y + 1]
+ board[x + 1][y - 1] + board[x + 1][y] + board[x + 1][y + 1] - 8 * '0');
}
void FindMine(char mine[ROWS][COLS], char show[ROWS][COLS], int row, int col)
{
int win = 0;
int x = 0;
int y = 0;
while(win < row * col - EASY_COUNT)
{
printf("请输入排查的坐标:");
scanf("%d %d", &x, &y);
if (x >= 1 && x <= row && y >= 1 && y <= col)
{
if (show[x][y] != '*')
{
printf("这个位置已被排查过,不能重复排查!\n");
}
else
{
if (show[x][y] == '1')
{
printf("你被炸死了!\n");
DisplayBoard(show, ROW, COL);
break;
}
else
{
win++;
int count = get_mine_count(mine, x, y);
show[x][y] = count + '0';
DisplayBoard(show, ROW, COL);
}
}
}
else
{
printf("输入格式错误,请重新输入!\n");
}
}
if (win == row * col - EASY_COUNT)
{
printf("恭喜你,排雷成功!\n");
DisplayBoard(mine, ROW, COL);
}
}
扫雷游戏(未优化版)puls
需积分: 5 200 浏览量
2023-08-02
23:40:15
上传
评论
收藏 1.77MB ZIP 举报
黑夢
- 粉丝: 2215
- 资源: 6
最新资源
- From Nand to Tetris (I) on Coursera
- VHDL是VHSIC Hardware Description Language的缩写,全称是Very High Speed I
- Redis是一种流行的开源内存数据库,它提供了各种各样的命令和功能来处理数据 以下是一些常见的Redis命令以及它们的用法:
- 基于java+springboot高校党建基本数据管理系统的设计与实现
- 网络安全是指保护计算机网络和网络基础设施的实践和技术 随着信息技术的发展,网络安全变得越来越重要,因为许多关键信息和个人数据都存
- 基于CYCLONE FPGA设计的出租车计价器Quartus工程VERILOG源码+课设报告文档.zip
- 课程设计:稳压电源电路.zip
- 基于C++的线段树和树状数组(免费提供全部源码)
- 使用 Redis 存储用户和他们的帖子.zip
- AI绘画实操(基础版)-推荐资料
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈