#define _crt_secure_no_warnings
#include
#include
#include
/* 用 c 語言寫乙個簡單的掃雷遊戲
*/// 1.寫乙個遊戲選單 menu()
// 2.開始遊戲
// 1.初始化二維陣列 init_inte***ce()
// 2.列印遊戲介面 print_inte***ce()
// 3.玩家掀起指定位置 play() --> 指定輸入座標(判斷合法性)
// 1.判斷該位置是否是雷
// 2.判斷是否掀掉所有空地
// 3.如果掀開的是空地,則判斷該空地周圍是否有雷
// 1.如果周圍有雷,則統計周圍雷的個數
// 2.如果周圍沒有雷,則掀開周圍除了雷的所有空地,並且統計所掀開空地周圍雷的個數
// 4.更新地圖
// 5.繼續 3 的迴圈
//定義全域性變數:
//定義掃雷地圖的長和寬
#define max_row 9
#define max_col 9
//定義預設的雷數
#define default_mine 9
//定義兩個二維陣列,分別存放初始地圖和雷陣
char show_map[max_row +2]
[max_col +2]
;char mine_map[max_row +2]
[max_col +2]
;//寫乙個遊戲選單
intmenu()
break;}
return choice;
}//開始遊戲
//初始化陣列
void
init_inte***ce()
}for
(int row =
0; row < max_row +
2; row++)}
int mine_count = default_mine;
while
(mine_count >0)
mine_count--
; mine_map[row]
[col]
='1';}
}//列印初始介面
void
print_inte***ce
(char map[max_row +2]
[max_col +2]
)printf
("\n ");
for(
int col =
1; col <= max_col; col++
)printf
("\n");
for(
int row =
1; row <= max_row ; row++
)printf
("\n");
}}//寫乙個統計周圍雷數個數的函式
intaround_mine_count
(int row,
int col)
//寫乙個判斷該位置周圍是否有雷的函式
intno_mine
(int row,
int col)
return0;
}//寫乙個掀開該位置周圍空地的函式
void
open_blank
(int row,
int col)
//寫乙個判斷遊戲結束的函式
intsuccess_sweep
(char show_map[max_row +2]
[max_col +2]
)}}if
(count == default_mine)
return0;
}//開始遊戲
void
startgame()
if(show_map[row]
[col]
!='*'
)break;}
//判斷該地方是否有雷
if(mine_map[row]
[col]
=='1')if
(no_mine
(row, col)
) show_map[row]
[col]
='0'
+around_mine_count
(row, col)
;//判斷是否掀開所有空地if(
success_sweep
(show_map)==1
)system
("cls");
//更新地圖
數字代表周圍雷的個數
用介面,寫乙個簡單的小遊戲
role介面 角色攻擊跟修煉 public inte ce role magicstick 介面 法師用的法杖 public inte ce magicstick weapon 介面 戰士適用的 public inte ce weapon 法師所使用的兩種法杖類 public class green...
用C語言實現掃雷小遊戲
多檔案實現掃雷遊戲,並滿足 第一次不被炸死 當座標周圍沒雷,可以實現展開 建立兩個12 12的陣列,乙個實現埋雷等操作mine 12 12 另乙個則是使用者所見的介面board 12 12 在mine.h中進行一些檔案引入和定義及宣告 mine.h ifndef mine h define mine...
用C語言實現掃雷小遊戲
隨便點乙個格仔,會有一塊,上面的數字就代表數字周圍八個格仔會有幾個雷,是1他周圍就只有1個雷,2就有兩個雷 最終任務就是點開所有沒有雷的格仔,則取得更好的分數,如果點開的格仔是雷,則遊戲結束。2.1 編寫選擇介面 同上個小遊戲一樣,首先編寫選擇介面,輸入1為開始遊戲,輸入2則退出遊戲。void me...