小遊戲 掃雷

2021-08-19 04:19:09 字數 1970 閱讀 4922



實現乙個掃雷遊戲

1.設定兩個陣列:mine[row][col]表示布雷,show[row][col]顯示掃雷情況(顯示周圍有幾個雷);

因為統計四周,邊緣位置不好實現,所以把二維陣列的行和列都加二,這樣無論是否在邊緣都可以當做一種情況來實現。

2.初始化mine和show,show->*,mine->0;

3.setmine布雷,電腦隨機設定20個雷;

4.顯示遊戲面板,在遊戲面板上輸入座標;

5.如果有雷,表示輸了,遊戲結束;無雷繼續遊戲,這時要統計周圍雷的個數,如果有0個雷,就把周圍區域置成『』,直到贏的個數等於row*col-雷的個數,那麼就贏了。

#ifndef _game_h_

#define _game_h_

#include#include#include#include#include//memset的標頭檔案

#pragma warning(disable:4996)

#define row 10

#define col 10

#define mine_num 20

void menu();//選單

void game(); //玩遊戲

void setmine(char mine[row + 2][col + 2], int row, int col);//布雷

int getmine(char mine[row + 2][col + 2], int row, int col, int x, int y);//統計周圍雷的個數

void display(char board[row + 2][col + 2], int row, int col);//顯示遊戲面板(mine和show)

#endif

#include"game.h"

void menu()

int main()

} while (1);//跳出迴圈;

system("pause");

return 0;

}

#include"game.h"

生成1-10的隨機數:

//static int getrandomnum(int start, int end)

////布雷:

void setmine(char mine[row + 2][col + 2], int row, int col)

} while (num);

}//統計該位置周圍雷的個數:

int getmine(char mine[row + 2][col + 2], int row, int col, int x, int y)

//顯示mine和show

void display(char board[row + 2][col + 2], int row, int col)

printf("\n");

for (i = 0; i <= col; i++)

printf("\n");

for (i = 1; i <=row; i++)//輸出行

printf("\n"); }}

void game()

else//無雷,顯示雷周圍的個數

if(win == row*col - 20)//贏的次數為80次就贏了。

}} else

} while (1);

}

列印結果如下:

小遊戲 掃雷

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

掃雷小遊戲

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 ...

掃雷小遊戲

include include include include include define rows 11 行數 define cols 11 列數 define leicount 10 雷數 int dir 8 2 int menu 選單函式 void display char show row...