用C語言實現簡單的掃雷遊戲

2021-08-18 13:00:34 字數 2518 閱讀 7817

>

1.通過觀察遊戲,我們可以想到需要用兩個二維陣列來實現掃雷的功能。

2.遊戲剛開始,需要需要顯示棋盤,用「*」遮蓋雷的座標,所以要有乙個填充棋盤的函式。

3.通過rand()函式,隨機生成雷的座標,埋雷的函式。

4.每次掃過後,都要顯示新的棋盤,顯示棋盤的函式,同時顯示該座標周圍雷的個數,並在該座標上顯示出來。

5.如果棋盤太大,我們乙個乙個的點過於麻煩,我們應該思考在座標周圍沒雷的時候可以實現擴充套件。

6.判斷是否踩雷,是否掃雷成功。

game.h

#define _crt_secure_no_warnings 1  

#ifndef game_h__

#define game_h__

#include

#include

#include

#include

#define row 11

#define col 11

#define count 10

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

void init_game(char mine[row][col],char show[row][col],int row ,int col);//初始化雷陣

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

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

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

void expand(char mine[row][col],char show[row][col], int x, int y);//沒有雷的地方擴充套件開

#endif

game.c

void init_game(char mine[row][col],char show[row][col],int row,int col)//初始化雷陣

void display(char show[row][col]) //列印介面

printf("\n");

printf("\n");

for(i=1; i

printf("\n");

printf("\n");

}printf("\n");

}void set_mine(char mine[row][col]) //設定雷的位置

} }

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

else

}else

}printf("恭喜你掃雷成功!\n");

display(mine);

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

if(show[x-1][y] == '*')

if(show[x-1][y+1] == '*')

if(show[x][y+1] == '*')

if(show[x+1][y+1] == '*')

if(show[x+1][y] == '*')

if(show[x+1][y-1] == '*')

if(show[x][y-1] == '*')

}

}

}

int get_num(char mine[row][col], int x, int y)//計算附近雷的個數

用C語言實現簡單的掃雷遊戲

簡單說明下設計掃雷時的幾個要求 第一下不會被雷炸死 顯示該座標點周圍雷的個數 該座標周圍沒有雷時,可以實現展開一片沒有雷的區域。首先我們得建造出棋盤,乙個為設計者看的棋盤顯示所以雷的分布情況 方便設計者測試 還有乙個棋盤就是全部都是由 組成的遊戲棋盤來給玩家掃雷。首先我們先用巨集定義陣列的大小,ro...

用C語言實現(掃雷遊戲)

include include include include pragma warning disable 4996 define rows 8 define cols 8 define mines 62 void menu 列印選單 void init mine char mine cols 2...

用C語言實現掃雷遊戲

本人能力不足,能力有待提公升,在敲 的過程中遇到了很多問題,在此不再一一贅述,現將 以及分析展示如下 include stdio.h include stdlib.h include time.h include string.h pragma warning disable 4996 define...