使用C來實現掃雷小遊戲

2021-08-18 18:02:06 字數 3258 閱讀 6688

這裡面寫了實現掃雷各種操作的方法。

#ifndef __lei_h__

#define __lei_h__

#include

#include

#define row 12//底層面板12行12列,雷區為10*10,最外面的一圈是為了考慮雷區面板的邊界情況

#define col 12

#define mines 10//設定了10個雷

void initboard(char show[row][col], char mine[row][col]);//初始化面板

void display(char show[row][col], char mine[row][col]);//顯示雷區面板或者遊戲面板

void setmine(char show[row][col]);//設定地雷數量,隨機設定

int minenum(char mine[row][col], int a, int b);//統計周圍的地雷數目

void start(char show[row][col], char mine[row][col]);//開始掃雷

void firstblood(char show[row][col], char mine[row][col], int i, int j);//避免第一次被炸死

void expand(char show[row][col], char mine[row][col],int x,int y);//展開一片連續無雷區,並在顯示雷數

int iswin(char show[row][col]);//判斷遊戲輸贏

void game(char show[row][col], char mine[row][col]);//遊戲函式

#endif

具體實現掃雷各個操作的步驟:

#define  _crt_secure_no_warnings 1

#include

#include

#include"lei.h"

//初始化

void initboard(char show[row][col], char mine[row][col])

}}

//列印雷區面板或者遊戲面板

void display(char show[row][col])

printf("\n");

}printf("----------------------------------------\n");

}

//使用隨機方法來設定地雷,地雷應該設定在裡面白色區域

//計算乙個座標周圍的地雷總數

int minenum(char mine[row][col], int a, int b)

if (mine[a - 1][b - 1] == '+')

if (mine[a - 1][b + 1] == '+')

if (mine[a][b - 1] == '+')

if (mine[a][b + 1] == '+')

if (mine[a + 1][b] == '+')

if (mine[a + 1][b - 1] == '+')

if (mine[a + 1][b + 1] == '+')

return

sum;

}

//避免第一次就踩到地雷

void firstblood(char show[row][col], char mine[row][col],int i,int j)

} while (1);}}

//展開一片無雷區的方法

void expand(char show[row][col], char mine[row][col],int x,int y)

}

//判斷輸贏

int iswin(char show[row][col])}}

if (sum == 10)//如果*剩下10個,說明剩下的都是地雷

return

0;}

//掃雷流程

void start(char show[row][col], char mine[row][col])

else

break;

}if (i == 1)//防止第一輸入踩到雷

i++;

int mines = minenum(mine, a, b);//計算周圍雷數

if (mine[a][b] == '+')//如果猜到了地雷,遊戲結束

else

if (mine[a][b] == '0')//如果不是雷,則顯示周圍雷的數量

expand(show, mine, a, b);//然後展開周圍無雷區域

display(show);//到此,可以展示給玩家現在的遊戲棋盤

iswin(show);//判斷輸贏

if (iswin(show) == 1)}}

//總遊戲函式

C實現掃雷小遊戲

直接上傳 這是乙個 game.h 標頭檔案 ifndef game h define game h include include define row 9 define col 9 define count 10 define rows 11 define cols 11 void initboa...

C 小遊戲 掃雷

標頭檔案 define crt secure no warnings 1 ifndef game h define game h include include include include define row 9 define col 9 define rows row 2 define co...

c 小遊戲 掃雷

include include include include include include includeusing namespace std define maxn 35 define midx 10 define midy 40 define cg 25 define ck 80 int ...