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][col];//展示
extern char real_mine[row][col];//布雷
void muen();//選單
void init_mine();//初始化數
void set_mine();//布雷
int count_mine();//統計周圍雷的個數
void print_player();//列印玩家棋盤
void print_mine();//列印設計者棋盤
int sweep_mine();//掃雷函式
void safe_mine();//避免第一次被雷炸死的函式
void open_mine(int x, int y);//展開函式
int count_show_mine(); ///判斷玩家棋盤剩餘未知區域的個數
#endif //__game_h__
game.c//遊戲主體和核心演算法
#define _crt_secure_no_warnings 1
#include"game.h"
char show_mine[row][col] = ;
char real_mine[row][col] = ;
void muen()
void init_mine()//初始化兩個棋盤}}
void print_player()//列印玩家棋盤
printf("\n");
for (i = 1; i
printf("\n");
}printf("10 ");//開始列印最後一行
for (i = 1; i < row - 1; i++)
printf("\n");
}void print_mine()//列印設計者棋盤
printf("\n");
for (i = 1; i
printf("\n");
}printf("10 ");//開始列印最後一行
for (i = 1; i < row - 1; i++)
printf("\n");
}void set_mine()//給設計者棋盤布雷}}
int count_mine(int x, int y)//檢測周圍8個區域雷的個數
void safe_mine()//避免第一次炸死
}break;//跳出此函式
}if (real_mine[x][y] == '0')
}else//座標錯誤}}
int sweep_mine()//掃雷函式,踩到雷返回1,沒有踩到雷返回0
}else if (real_mine[x][y] == '1')//踩到雷
}else
return 0;//沒踩到雷
}void open_mine(int x, int y)//座標周圍展開函式
if (real_mine[x - 1][y] == '0')
if (real_mine[x - 1][y + 1] == '0')
if (real_mine[x][y - 1] == '0')
if (real_mine[x][y + 1] == '0')
if (real_mine[x + 1][y - 1] == '0')
if (real_mine[x + 1][y] == '0')
if (real_mine[x + 1][y + 1] == '0')
}int count_show_mine()//判斷剩餘未知區域的個數,個數為雷數時玩家贏}}
return count;
main.c //遊戲的流程
#define _crt_secure_no_warnings 1
#include"game.h"
double start, finish;
void game()
print_player();列印玩家棋盤
while (1)//迴圈掃雷
if (ret)//判斷是否踩到雷
print_player();//列印玩家棋盤}}
int main()
muen();
printf("contiue?\n");
} while (1);//迴圈玩遊戲
system("pause");
return 0;
}
小遊戲 掃雷
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...
掃雷小遊戲
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...