C語言實現簡易掃雷小遊戲

2022-10-03 23:39:13 字數 2528 閱讀 6624

我們經常在電腦上面玩的掃雷遊戲,很考驗我們的判斷能力,但是實現乙個掃雷遊戲並不是很困難,只要多注意一些細節就好,就可以將乙個簡單的掃雷遊戲寫出來!

接下來先介紹掃雷遊戲要實現的功能:

首先,要對雷陣進行初始化,在初始化的時候要注意要定義兩個陣列,乙個是讓我們掃雷的陣,另外乙個就是顯示某乙個地方的周圍的雷的總個數的矩陣,在初始化的時候要注意為了避免傳址的問題,我們把它寫在主函式裡面。

char mine[rows][cols];

char show[rows][cols];

int i = 0;

int j = 0;

for (i = 0; i < rows - 1; i++)

}接下來就是電腦在隨機布局雷陣的函式,這個函式要用到rand() 函式,來產生隨機值,在雷陣裡面隨機布雷。

void set_mine(char mine[rows][cols])

}}再有就是計算雷的個數的函式,要講某乙個座標位置的周圍8個位置的雷的個數算出來,並且將個數顯示出來

int get_num(char mine[rows][cols], int x, int y)

if (mine[x - 1][y] == '1')//左邊

if (mine[x - 1]程式設計客棧[y + 1] == '1')//左下方

if (mine[x][y - 1] == '1')//上方

if (mine[x][y + 1] == '1')//下方

if (mine[x + 1][y - 1] == '1')//右上方

if (mine[x + 1][y] == '1')//右方

if (mine[x + 1][y + 1] == '1')//右下方

return count;

}將掃雷函式的各個函式都實現了之後,我們來看一下完整的**

標頭檔案game.h 

#define _crt_secure_no_warnings 1

#include

#include

#include

#include

#define rows 11

#define cols 11

#defipnvlvyqsljne count 10

int menu();//選單函式

void display(char show[rows][cols]);

int game(char mine[rows][cols],char show[rows][cols]);//遊戲

void set_mine(char mine[rows][cols]);//設定雷的位置

int sweep(char mine[rows][cols], char show[rows][cols]);//開始掃雷

int get_num(char mine[rows][cols], int x, int y);//計算雷的個數

實現函式 game.c

#include"game.h"

//選單函式

int menu()

//設定雷的位置

void set_mine(char mine[rows][cols]) }}

//列印下棋完了顯示的介面

void display(cha show[rows][cols])

printf("\n");

for (i = 1; i < rows - 1; i++)

printf("\n"); }}

//計算雷的個數

int get_num(char mine[rows][cols], int x, int y)

if (mine[x - 1][y] == '1')//左邊

if (mine[x - 1][y + 1] == '1')//左下方

if (mine[x][y - 1] == '1')//上方

if (mine[x][y + 1] == '1')//下方

if (mine[x + 1][y - 1] == '1')//右上方

if (mine[x + 1][y] == '1')//右方

if (mine[x + 1][y + 1] == '1')//右下方

return count;

}//掃雷

int sweep(char mine[rows][cols], char show[rows][cols])

else }

printf("恭喜你贏了!\n");

display(mine);

return 0;}

//遊戲

int game(char mine[rows][cols],char show[rows][cols])

最後就是測試函式 text.c

#include"game.h"

int main()

} menu();

while (1)

else if (input == 0)

else }

return 0;

}本文標題: c語言實現簡易掃雷小遊戲

本文位址:

C語言實現掃雷小遊戲

我們首先說一下基本思路 首先我們需要兩個面板,乙個顯示面板,乙個雷面板,這兩個面板需要用二維陣列來實現。其次,要在雷面板中布置雷,然後需要輸入座標,排查雷,繼而判斷是否踩到雷,如果踩到雷,那麼玩家死翹翹,遊戲結束,如果沒有踩到雷,需要判斷此座標周圍雷的個數。如果最後設定雷的總個數全部被排查出來,那麼...

C語言實現掃雷小遊戲

本文將從一行行 中詳解掃雷小遊戲,對每乙個模組都使用詳細的注釋,使這個掃雷小遊戲簡單易懂。首先,簡單分析掃雷的玩法,掃雷就是在乙個棋盤中布置適當數量的雷數玩家通過對雷陣的排查,來找出雷的位置。如果玩家選擇的座標周圍無雷將自動展開這片區域,若有雷會顯示雷數。1.定義兩個適當大小的雷陣,乙個用來埋雷,判...

c語言實現簡易掃雷遊戲

掃雷遊戲很多人都玩過吧,今天就為大家介紹我用c語言製作的簡單掃雷程式。這個遊戲的主要功能就是game 函式的實現,用乙個型別為char 的show map二維陣列進行標記一定數量的地雷,不列印給玩家和另乙個同型別的名為mine map的二維陣列,用於記錄座標周圍的地雷數。玩遊戲的功能都是圍繞這兩個函...