C語言小遊戲 掃雷

2021-08-18 22:46:39 字數 3553 閱讀 4954

1. 這個小遊戲由兩個原始檔,乙個標頭檔案分工合作完成。

test.c

game.c

game.h

2. 確定基本框架,在test.c中寫主函式以及遊戲所需的基本框架(例如:menum();switch();)

3. 先確定這個遊戲需要的函式功能,在game.h中進行函式宣告,game.c中進行函式的定義,test.c中進行函式的呼叫。

void init_board(char arr[row][col],int  row,int  col);//初始化棋盤

void displayboard(char arr[row][col], int row, int col);//列印

void playermove(char arr[row][col], int row, int col);//玩家走

void computermove(char arr[row][col], int row, int col);//電腦走

char iswin(char arr[row][col], int row, int col);//判斷輸贏

int ifull(char arr[row][col], int row, int col);//判斷滿盤

以上是三子棋小遊戲的基本框架

下面是具體**

game.h

#define _crt_secure_no_warnings 1

#ifndef _game_h_

#define _game_h_

#endif

#define row 3//棋盤大小

#define col 3//棋盤大小

#define num 3//判斷幾子棋

#include

#include

#include

#include

void init_board(char arr[row][col],int row,int col);//初始化棋盤

void displayboard(char arr[row][col], int row, int col);//列印

void playermove(char arr[row][col], int row, int col);//玩家走

void computermove(char arr[row][col], int row, int col);//電腦走

char iswin(char arr[row][col], int row, int col);//判斷輸贏

int ifull(char arr[row][col], int row, int col);//判斷滿盤

test.c

#define _crt_secure_no_warnings 1

#include"game.h"

void menum()

void game()

; init_board(board, row, col);//初始化棋盤

displayboard(board, row, col);//列印

while (1)

if (ifull(board, row, col) == 1)

computermove(board, row, col);//電腦走

displayboard(board, row, col);//列印

if (iswin(board, row, col) == 'y')

if (ifull(board,row,col) == 1)

}}void test()

} while (i);

}int main()

game.c

#define _crt_secure_no_warnings 1

#include"game.h"

void init_board(char arr[row][col], int row, int col)//初始化棋盤

}}void displayboard(char arr[row][col], int row, int col)//列印

printf(" %c \n", arr[i][j]);

if (i < row - 1)

printf("---");

}printf("\n");

}}void playermove(char arr[row][col], int row, int col)//玩家走

}printf("請重新輸入\n");

}}void computermove(char arr[row][col], int row, int col)//電腦走

}}char iswin(char arr[row][col], int row, int col)//判斷輸贏}}

}for (j = 0; j < col; j++)}}

}for (i = 0; i <= row - num; i++)}}

}}for (i = 0; i <= row - num; i++)//判斷斜/}}

}}}int ifull(char arr[row][col], int row, int col)判斷滿盤

}return1;}

/這裡有兩個判斷輸贏函式,兩個用了不同的思路,上面那個可以判斷不止三子棋,任意棋的都可以,只需要改變num的值。

/下面這個是只能判斷三子棋,其演算法思路比較簡單,好理解。

//char iswin(char arr[row][col], int row, int col)//判斷輸贏

//// }

// }

// for (j = 0; j < col; j++)

//

// }

// }

// for (i = 0; i <= row - num; i++)

//

// }

// }

// for (i = 0; i <= row-num; i++)

//

// }

// }

//}

執行結果如下:

以上是乙個簡單的三子棋遊戲,這個遊戲目前只是乙個比較笨的遊戲,在電腦下棋函式還可以加一些演算法讓電腦可以進行搶中間,賭玩家,優先贏的功能。

C語言 掃雷小遊戲

第一次下子,不炸死 座標周圍沒雷,可以實現展開 遊戲結束後展示玩家用時 game.h ifndef game h define game h include include include include define row 12 define col 12 define count 10 棋盤中...

C語言小遊戲 掃雷

這個小遊戲也分為三個部分的 分別是標頭檔案,測試 和遊戲 1.注意初始化以及使用getwincount函式的時候字元1和字元0的使用。2.為了玩家的體驗,第一步不可以被炸死。3.要擴充套件,這時會用到遞迴,注意遞迴的使用。4.可以新增標記,優化遊戲。標頭檔案 game.h ifndef game h...

掃雷小遊戲(C語言)

c語言學完了,就嘗試過寫個掃雷的小遊戲,接下來展示一下。整個 分為三個部分 game.h define crt secure no warnings 1 include include include include define rows 11 define cols 11 define coun...