我們經常在電腦上面玩的掃雷遊戲,很考驗我們的判斷能力,但是實現乙個掃雷遊戲並不是很困難,只要多注意一些細節就好,就可以將乙個簡單的掃雷遊戲寫出來!
接下來先介紹掃雷遊戲要實現的功能:
首先,要對雷陣進行初始化,在初始化的時候要注意要定義兩個陣列,乙個是讓我們掃雷的陣,另外乙個就是顯示某乙個地方的周圍的雷的總個數的矩陣,在初始化的時候要注意為了避免傳址的問題,我們把它寫在主函式裡面。
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的二維陣列,用於記錄座標周圍的地雷數。玩遊戲的功能都是圍繞這兩個函...