思路:
先畫出遊戲的流程圖來提供乙個清晰思路,往後按流程寫**就不容易混亂。
注意:由於本程式用的是多檔案結構所以一定要聲名標頭檔案game.h
標頭檔案game.h
#ifndef _game_h_
#define _game_h_
#include
#include
#include
#define easy_count
10//雷的個數
#define rows
11//實際雷盤大小
#define cols
11#define row
9//顯示雷盤大小
#define col
9void
init
(char mine[
rows][
cols
], int rows, int cols, int set);
//初始化
void
display
(char mine[
rows][
cols
], int row, int col)
;//列印陣列
void
setmine
(char mine[
rows][
cols
], int row, int col)
;//布雷
void
findmine
(char mine[
rows][
cols
], char show[
rows][
cols
],int row, int col)
;//排雷且判輸贏
void
openmine
(char mine[
rows][
cols
], char show[
rows][
cols
], int x, int y)
;//展開座標周圍
void
safemine
(char mine[
rows][
cols
], char show[
rows][
cols
], int row, int col)
;//保證第一步不被炸死
#endif
遊戲測試模組test.cvoid
test()
//遊戲測試執行
;//存放雷的資訊
char show[rows]
[cols]=;
//存放排查出雷的資訊
int input =0;
do}while
(input)
;}
遊戲執行模組game.c#define _crt_secure_no_warnings 1
#include
"game.h"
void
init
(char mine[rows]
[cols]
,int rows,
int cols,
char set)
//初始化}}
void
display
(char mine[rows]
[cols]
,int row,
int col)
//列印陣列
printf
("\n");
for(i =
1; i <=row; i++
)printf
("\n");
}printf
("------------------------------\n");
}void
setmine
(char mine[rows]
[cols]
,int row,
int col)
//布雷}}
intcountmine
(char mine[rows]
[cols]
,int x,
int y)
//計算x,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;
}void
openmine
(char mine[rows]
[cols]
,char show[rows]
[cols]
,int x,
int y)
//計算x,y座標周圍座標的雷數
if(mine[x -1]
[y]==
'0')
if(mine[x -1]
[y +1]
=='0')if
(mine[x]
[y -1]
=='0')if
(mine[x]
[y +1]
=='0')if
(mine[x +1]
[y -1]
=='0')if
(mine[x +1]
[y]==
'0')
if(mine[x +1]
[y +1]
=='0')}
void
findmine
(char mine[rows]
[cols]
,char show[rows]
[cols]
,int row,
int col)
//掃雷且判輸贏
else}}
else}}
void
safemine
(char mine[rows]
[cols]
,char show[rows]
[cols]
,int row,
int col)
//保證第一步不被炸死
ret--;}
}display
(show, row, col)
;}
遊戲主函式模組main( )#define _crt_secure_no_warnings 1
#include
"game.h"
intmain()
二維陣列應用 掃雷
遊戲簡介 電腦隨機設定10個雷,使用者輸入座標,若座標下是雷則結束遊戲,不是則該位置顯示周圍的雷數。game.h ifndef game h define game h include 設定螢幕顯示的雷盤的大小 define row 9 define col 9 設定實際雷盤的大小 判斷雷數是看使用...
C語言二維陣列
int main int argc,const char argv int array 5 建立乙個二維陣列 型別修飾符陣列名 包含幾個小陣列 每個小陣列有多少個元素 初始值如何寫?int array 3 4 一維陣列可以省略元素個數,二維陣列只能省略第一位 第乙個 3 可以不寫 第二種初始值寫法 ...
C語言 二維陣列
c語言之二維陣列 1 定義的基本格式 int a 1 2 1代表一行,2代表二列 難點 二維陣列的行列下標。字串結束標誌的實用。2 一維陣列和二維陣列的聯絡。一維陣列如同千層面一樣一層一層的,而二維陣列,只是給千層面切了幾刀 3 int a 2 3 a 0 0 是1,a 0 1 是2,a 0 2 是...