C語言 掃雷遊戲

2021-10-19 17:48:31 字數 2769 閱讀 4976

test2.c:整個遊戲,開始遊戲/退出遊戲的大體執行流程

game2.c:具體實現掃雷遊戲功能的函式定義

遊戲的大體執行流程

#include

"game2.h"

//選單函式

void

menu()

//遊戲函式

void

game()

;//玩家不能看

//2.排查雷資訊的棋盤

char show[rows]

[cols]=;

//玩家進行遊戲時候的棋盤

//初始化棋盤

initboard

(mine, rows, cols,

'0')

;initboard

(show, rows, cols,

'*')

;//列印棋盤

displayboard

(show, row, col)

;//布置雷

setmine

(mine, row, col)

;//掃雷

findmine

(mine,show, row, col);}

intmain()

}while

(input)

;return0;

}

具體實現掃雷遊戲功能的函式定義

#include

"game2.h"

//對mine棋盤,一開始全初始化為'0',後面放雷的座標位置改為'1'

//對show棋盤,一開始全初始化為'*',後面掃雷時玩家選擇的座標位置改為周圍雷的個數

void

initboard

(char

(*p)

[cols]

,int row,

int col,

char set)

//set為需要初始化的字元}}

void

displayboard

(char

(*ps)

[cols]

,int row,

int col)

printf

("\n");

printf

(" ");

for(i =

1; i <=

9; i++

)printf

("\n");

//列印最左邊的數字座標和分隔行以及相應的棋盤內容

for(i =

1; i <= row; i++

)printf

("\n");

}}void

setmine

(char

(*pm)

[cols]

,int row,

int col)}}

//把座標周圍8個位置的字元相加再減去8 * '0',ascll編碼的差值就是周圍雷的個數

static

intfind_mine_count

(char

(*pm)

[cols]

,int x,

int y)

void

findmine

(char

(*pm)

[cols]

,char

(*ps)

[cols]

,int row,

int col)

else

//座標不重複的情況

else

//沒踩雷的情況}}

else

//座標錯誤的情況

}//最後判斷迴圈結束是因為踩雷之後break跳出的還是掃雷成功結束迴圈的

if(win == row * col - max_mine)

}

巨集定義,函式宣告,引用相關c庫函式的標頭檔案

//引用庫函式的標頭檔案

#include

#include

#include

//宣告表示棋盤大小的量

#define row 9

#define col 9

#define rows 11

#define cols 11

#define max_mine 10

//宣告函式

void

initboard

(char

(*p)

[cols]

,int row,

int col,

char set)

;void

displayboard

(char

(*ps)

[cols]

,int row,

int col)

;void

setmine

(char

(*pm)

[cols]

,int row,

int col)

;void

findmine

(char

(*pm)

[cols]

,char

(*ps)

[cols]

,int row,

int col)

;

C語言 掃雷遊戲

標頭檔案 ifndef mine h define mine h define line 10 define list 10 define rows 6 define cows 6 int game char userboard line 2 list 2 char playerboard line...

C語言 掃雷遊戲

要求 1 第一下輸入座標,不炸死。2 座標周圍沒有雷,可以實現展開。思想 一 用乙個測試函式test 完成使用者的整個遊戲體驗,放在主函式中。二 test 函式中應該完成的內容 選單選擇和遊戲部分。選單選擇即menu 函式 遊戲部分即game 函式 因為是遊戲,所以以使用者體驗為先,先讓使用者玩一把...

掃雷遊戲C語言

掃雷遊戲c語言 include include include define max row 9 define max col 9 define max mine count 10 char mine map max row max col 雷的位置 char show map max row ma...