關於掃雷優化
1.核心思想:使用兩個二維陣列進行設計,乙個用於顯示,乙個用於後台雷的布置。
2.使用巨集常量,後期可以任意修改遊戲難度。
3.關於掃雷拓展模組,目前使用的方法比較low,若周圍均沒有,則全部顯示。
4.剩餘位置數使用全域性變數count,必須考慮拓展之後count變化。
有待改進之處
1.需設計標記雷的步驟,增加使用者體驗。
2.拓展方式有待改進。
3.介面布局仍需要進行優化。
掃雷遊戲**
#include
#include
#include
#include
#include
#define row 12
#define col 12
#define mine_num 15
#define total 100
#pragma warning(disable:4996)
int count = total;
void inter()
int getrandindex(int start, int end)
void layout(char mine[col], int row, int col)
void expand(char mine[row][col], char board[row][col], int x, int y)
else if((x==1&&y==1)||(x==10&&y==10) || (x == 1 && y == 10) || (x == 10 && y == 1))
else
board[x - 1][y - 1] = getmines(mine, x-1, y-1);
board[x - 1][y] = getmines(mine, x - 1, y);
board[x - 1][y + 1] = getmines(mine, x - 1, y + 1);
board[x][y - 1] = getmines(mine, x , y - 1);
board[x][y + 1] = getmines(mine, x , y + 1);
board[x + 1][y - 1] = getmines(mine, x + 1, y - 1);
board[x + 1][y] = getmines(mine, x + 1, y);
board[x + 1][y + 1] = getmines(mine, x + 1, y + 1);
} }}void game()
} else
printf("還有%d個位置 \n", count);
} else }}
int main()
} system("pause");
return 0;
}相關執行樣例
本文標題: c語言實現掃雷遊戲及其優化
本文位址:
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語言實現
1.使用兩個二維陣列表示地圖 a show map char 表示翻開 數字 和未翻開 的狀態 b mine map char 表示地雷 1 和不是地雷 0 的狀態 2.對陣列進行初始化 3.列印地圖 show map 4.提示玩家輸入乙個座標表示要翻開乙個位置 5.判定是否踩雷 6.如果未踩雷,判...