game.h
#ifndef __game_h__
#define __game_h__
#include #include #include #include #define row 9
#define col 9
#define rows row+2
#define cols col+2
#define easy_count 10
#define mid_count 30
#define hard_count 40
void initboard(char board[rows][cols], int rows, int cols, char set);
void displayboard(char board[rows][cols], int row, int col);
void setmine(char board[rows][cols], int row, int col,int mine);
int getminecount(char board[rows][cols], int x, int y);
void expand(char board_show[rows][cols],char board_mine[rows][cols], int x, int y);
int check_mine(char board[rows][cols], int row, int col);
void change_mine(char board[rows][cols],int row,int col,int x,int y);
void mark_mine(char board[rows][cols],int x,int y,char ch);
#endif//__game_h__
///函式實現
void initboard(char board[rows][cols], int rows, int cols, char set) //初始化棋盤
} while (count);
}int getminecount(char board[rows][cols], int x, int y) //獲取當前座標周圍的雷的數目
void expand(char board_show[rows][cols],char board_mine[rows][cols], int x, int y) //周圍沒有雷,就展開(感覺此處**臭長,可以優化)
int check_mine(char board[rows][cols], int row, int col) //獲取當前剩餘的格仔數
} return count;
}void change_mine(char board[rows][cols],int row,int col,int x,int y) //如果的第一次走,踩雷,就移走當前座標的雷 }}
void mark_mine(char board[rows][cols],int x,int y,char ch) //標記
if(ch=='m')
else if(ch=='c')
} while (flag);
}
test.c
#define _crt_secure_no_warnings 1
#include "game.h"
void game()
; char mine[rows][cols]=;
do //難度選擇
}} while (flag);
initboard(show,rows,cols,'*');
initboard(mine,rows,cols,'0');
system("cls"); //清屏
displayboard(show,row,col);
setmine(mine,row,col,leo);
while(1)
if (ch=='m'||ch=='c')
mark_mine(show,r,l,ch);
if (count==1)
else if (mine[r][l]=='1')
if(count)
if (getminecount(mine,r,l)==0)
expand(show,mine,r,l);
displayboard(show,row,col);
if(check_mine(show,row,col)==easy_count)
} }void menu()
void test()
}while(input);
}int main()
掃雷小遊戲簡單易懂
game.h 遊戲的標頭檔案 ifndef game h define game h include include include include define count 10 雷數 define col 9 define row 9 define cols col 2 define rows ...
小遊戲 掃雷
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...