三子棋程式

2021-08-19 00:12:51 字數 2335 閱讀 2517

標頭檔案game.h

#ifndef _game_h_

#define _game_h_

#include #include #include //exit or srand #include //memset or #include #define row 3

#define col 3

void game();

#endif

原始檔game.c

#include "game.h"

static void displayboard(char board[row][col], int row)

} printf("\n");

}static void playmove(char board[row][col], int row)

else }

else }

} static void computermove(char board[row][col], int row)

} while (1);

} static int isfull(char board[col], int row)

} }return 1;

} static char iswin(char board[row][col], int row)

}//判斷行

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

}//判斷列

if (board[0][0] == board[1][1] && board[1][1] == board[2][2]\

&&board[0][0] != ' ')

//判斷右對角線

if (board[0][2] == board[1][1] && board[1][1] == board[2][0]\

&&board[0][2] != ' ')

//判斷左對角線

if (isfull(board, row))

return ' ';

}void game()

computermove(board, row);//電腦移動

ret = iswin(board, row);//判斷輸贏

} while (ret == ' ');

if (ret == 'q')

else if (ret == 'x')

else if (ret == 'o')

else

}

原始檔main.c

#include "game.h"

void menu()//螢幕選單顯示,提示玩家選擇

選擇「1」之後的結果

接下來選擇座標

board[0][0]之後的結果

在此程式中遇到這樣的問題,

//下面這個程式應該是下標從0到2,可不是,而第一次的那個應該是從1到3,可也不是,剛好相反,不得其解
static void playmove(char board[row][col], int row)

不明白,等明白了,再接著討論吧!!!

簡單的三子棋程式

一.題目分析 簡單三子棋是指棋盤為3 3,玩家與電腦之間對決的遊戲。其中 0 代表電腦落子,x 玩家落子。基本思路 1.列印地圖 列印乙個 字狀的棋盤 2.電腦落子 隨機落子 3.玩家落子 通過輸入座標的方式 4判斷遊戲結果 二.程式 game.件 ifndef game h define game...

三子棋遊戲

首先介紹一下三子棋遊戲規則 這是乙個玩家和電腦對戰的三子棋遊戲 棋盤如上圖所示,三個棋子連在一起則勝利 下面就是用c語言實現的方法 建立棋盤 利用二維陣列來實現乙個棋盤,棋盤剛開始是沒有任何棋子的,將二維陣列所有元素初始化為空格即可 玩家下棋 玩家輸入棋盤中的對應座標來下棋,下棋時需要考慮輸入座標合...

三子棋遊戲

閒來無事,竟意外發現了三子棋遊戲,順便實現了這個過程,我們一起來看下。三子棋的實現需要的是五個函式,我用了initboard 初始化棋盤函式 display 列印棋盤函式 player 玩家 computer 電腦 check full 判斷棋盤是否已滿,從而判斷輸贏 game.h define c...