掃雷小遊戲製作全過程

2021-10-04 14:07:33 字數 1617 閱讀 7282

在練習了幾十個小短句,和其他小專案之後,我開始了第乙個比較大的,也比較經典的小遊戲——掃雷

首先需要分析,製作這個小專案所需要的大致流程

開始遊戲

初始化棋盤

給地圖中增加雷

使用者互動,輸入座標,判斷座標是否有雷

勝利/失敗

我們可以通過switch選擇語句來讓玩家開始遊戲,並通過printf函式來讓視覺化介面盡量美觀

int n;

printf("如果你要開始遊戲,請輸入1\n");

scanf("%d", &n);

switch (n)

我們準備寫乙個可改變棋盤大小的遊戲,因此我們可以將陣列的變數在標頭檔案中定義,長和寬都定義為9,但這個時候就有問題了,我們很難確定邊界的座標周圍有多少個『雷』,因此我們實際的棋盤大小要更大一些,但呈現在玩家面前的只有中間那一塊的棋盤。

#define len 9

#define tall 9

#define lens len+2

#define talls tall+2

首先,我們需要兩個陣列分別作為玩家視覺化的介面和棋盤資料,並將乙個全部置0,另乙個則全部置*作為使用者視覺化的介面,並將其列印出來

char game1[lens][talls];

char game2[lens][lens];

void init_news(char a[lens][talls],char n)//初始化全場為乙個數符

//printf("\n"); }}

void print_init(char a[lens][talls])//列印棋盤

printf("\n");

for (int i = 1; i <= len; i++)

printf("\n");

}}

我們需要隨機給地圖中增加地雷數量,可以將地雷數量設定為n,n可以改變

void product_mine(char a[lens][talls],int num)//為地圖裡初始化地雷

}

由於我們已經將棋盤全部置0,地雷置1,因此只需要將其周圍的1加起來,數字大小即為周圍地雷數量

int sum_mine(char a[lens][talls], int n, int m)

int sum = 0;

for (int i = -1; i < 2; i++) }

return sum;

}

怎麼確定勝利或者失敗呢?當棋盤總格仔-地雷數量=排雷次數。此時地圖上全都是地雷,此時勝利。

如果輸入的座標和地雷座標一致時,此時失敗。

當然,如果一次猜完之後,接下來又要猜的話需要迴圈,則應該將本函式置於死迴圈之中。

void guess_number(char a[lens][talls], char b[lens][talls],int t)

}

以上就是我這次小小的實踐的收穫和結果

當我這個程式執行時,一次只會判斷乙個座標,設想一下,如果點乙個座標,便能讓他周圍的空格子都呈現出來其數字,玩起來應該會更輕鬆一點吧

小遊戲 掃雷

c語言實現的乙個簡單的掃雷遊戲 介面簡單,功能 首次踩雷的,會換雷。掃雷有九宮格擴撒 環境 vs2015 如下 game.h pragma once ifndef game h define game h define rows 11 define cols 11 define num 9 incl...

小遊戲 掃雷

實現乙個掃雷遊戲 1.設定兩個陣列 mine row col 表示布雷,show row col 顯示掃雷情況 顯示周圍有幾個雷 因為統計四周,邊緣位置不好實現,所以把二維陣列的行和列都加二,這樣無論是否在邊緣都可以當做一種情況來實現。2.初始化mine和show,show mine 0 3.set...

掃雷小遊戲

game.h 標頭檔案 ifndef game h define game h include include include include define row 12 define col 12 define count 10 棋盤中雷的總數 extern char show mine row ...