掃雷遊戲 C語言實現

2021-09-17 23:03:28 字數 2114 閱讀 7777

1.使用兩個二維陣列表示地圖

a)show_map(char):表示翻開(數字)和未翻開(*)的狀態

b)mine_map(char):表示地雷(『1』)和不是地雷(『0』)的狀態

2.對陣列進行初始化

3.列印地圖(show_map)

4.提示玩家輸入乙個座標表示要翻開乙個位置

5.判定是否踩雷

6.如果未踩雷,判定所選座標周圍有幾個雷

下面是原始碼:

#define _crt_secure_no_warnings

#include#include#include#include#define max_row 9

#define max_col 9

#define mine_count 10

int menu()

void init(char show_map[max_row][max_col],char mine_map[max_row][max_col])

} for (int row = 0; row < max_col; row++)

} int mine_count = mine_count;

for (; mine_count>0; mine_count--)

mine_map[row][col] = '1'; }}

void print(char map[max_row][max_col])

printf("\n");

printf(" ");

for (int row = 0; row < max_row; row++)

printf("\n");

for (int row = 0; row < max_row; row++)

printf("\n"); }}

updateshowmap(int row,int col,char mine_map[max_row][max_col],char show_map[max_row][max_col] )

if (row - 1 >= 0 && mine_map[row-1][col] == '1')

if (row - 1 >= 0 && col+1<=max_col && mine_map[row-1][col+1] == '1')

if (col - 1 >=0 && mine_map[row][col-1] == '1')

if (col + 1 <=max_col && mine_map[row][col+1] == '1')

if (row + 1 <= max_row && col - 1 >= 0 && mine_map[row+1][col-1] == '1')

if (row + 1 <= max_row && mine_map[row+1][col] == '1')

if (row + 1 <= max_row && col + 1 <= max_col && mine_map[row+1][col+1] == '1')

show_map[row][col] = count+'0';

}void game()

if (show_map[row][col] != '*')

if (mine_map[row][col] == '1')

++open_count;

if (open_count == max_row*max_col - mine_count)

updateshowmap(row,col,mine_map,show_map); //判斷被翻開格仔的周圍有幾個雷 }}

int main()

else if(choose==0)

else

system("pause");

return 0;

}

遊戲執行如下(這裡座標只翻開了幾個,可以自己執行)

C語言實現掃雷遊戲

game.h define crt secure no warnings 1 include include include include define sum 10 define row 11 define col 11 void print void init char mine row co...

C語言實現掃雷遊戲

今天我們來用c語言實現另乙個眾所周知的小遊戲 掃雷 首先,與五子棋不同的是,為了不讓雷被玩家直接看到,我們需要建立兩個棋盤。乙個用於儲存雷,我們將其命名為mine盤,乙個能直觀的展現給玩家,我們將其命名為show盤 其次,為了算清玩家選擇的座標周圍有多少雷,我們無可避免的要訪問mine盤對應座標周圍...

C語言實現掃雷遊戲

思路 使用兩個二維陣列分別存放布置好的雷和排查出來的雷 初始化棋盤並展示棋盤 開始不展示雷的位置 隨機找座標布置雷 輸入座標排查雷 若輸入的座標是雷,則被炸死 若輸入的座標不是雷,則統計周圍有幾個雷 test.c define crt secure no warnings 1 include gam...