掃雷程式的編寫需要有清晰的思路,所以我們先要清楚掃雷的實現有幾個功能模組讓我們編寫,再用主函式將功能結合在一起:
根據這幾點可以寫出如下的標頭檔案:
#ifndef __game_h__
#define __game__h__
#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__
* 接下來要做的就是將主函式的大體框架程式寫出來,在依次向各個函式塊裡面充填程式,以下為主函式:*
#include"lei.h"
void game()
print_player();列印玩家棋盤
while (1)//迴圈掃雷
if (ret)//判斷是否踩到雷
print_player();//列印玩家棋盤
}}int main()
muen();
printf("contiue?\n");
} while (1);//迴圈玩遊戲
system("pause");
return
0;}
接下來再依次實現主函式裡面的各個函式塊:
#include"lei.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 2; i++)//列印豎標(1--10)
printf("\n");
}printf("10 ");//開始列印最後一行
for (i = 1; i < row - 1; i++)
printf("\n");
}void print_mine()//列印設計者棋盤
printf("\n");
for (i = 1; i 2; i++)//列印豎標(1--10)
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;
}
C語言實現掃雷小程式
掃雷 是一款大眾類的益智小遊戲,於1992年發行。遊戲目標是在最短的時間內根據點選格仔出現的數字找出所有非雷格仔,同時避免踩雷,踩到乙個雷即全盤皆輸。在實現遊戲的首先,需要建立test.c game.c game.h三個檔案。test.c主要進行遊戲的測試。game.c主要進行遊戲內部一些函式的具體...
用C語言實現(掃雷遊戲)
include include include include pragma warning disable 4996 define rows 8 define cols 8 define mines 62 void menu 列印選單 void init mine char mine cols 2...
用C語言實現掃雷遊戲
本人能力不足,能力有待提公升,在敲 的過程中遇到了很多問題,在此不再一一贅述,現將 以及分析展示如下 include stdio.h include stdlib.h include time.h include string.h pragma warning disable 4996 define...