用C語言寫乙個三子棋遊戲

2021-08-29 18:36:38 字數 1944 閱讀 1318

執行環境: win10 vs2013

由於本程式在上傳後,不經意間輸出出現bug,現已修復,有興趣的朋友複製下方**進行學習

程式設計和思路均已注釋的行為存放在源**中

原始程式截圖

#include#include#include//對陣列的長度定義為巨集,方便後期對程式進行擴充套件

//直接修改巨集定義即可

#define row 3

#define col 3

//1.定義二維陣列表示棋盤

char g_chess_board[row][col];

void init() }}

void print() }}

void playermove()

if (g_chess_board[row][col] != ' ')

g_chess_board[row][col] = 'x';

break;

//5.如果玩家輸入合法,就把棋盤上的對應位置設定為'x' }}

void computermove() }}

//使用x表示玩家.,使用o表示電腦

//約定checkwinner函式返回x表示玩家勝利

//如果返回o表示電腦勝利,返回q表示和棋

//如果返回空格表示勝負未分

int isfull()

} }return 1;

}char checkwinner()

} //2.再檢查所有的列是不是連在一起

for (int col = 0; col < col; ++col)

} //3.檢查對角線

if (g_chess_board[0][0] == g_chess_board[1][1]

&& g_chess_board[0][0] == g_chess_board[2][2]

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

if (g_chess_board[2][0] == g_chess_board[1][1]

&& g_chess_board[2][0] == g_chess_board[0][2]

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

//4.檢查是否和棋

if (isfull())

return ' ';

}int main()

computermove();

winner = checkwinner();

if (winner != ' ')

} if (winner == 'x')else if (winner == 'o')else if (winner == 'q')

system("pause");

return 0;

}

C語言 三子棋遊戲

用c語言第一次完成三子棋遊戲,感觸特別深刻。在寫 中我明白了,思路還有 風格的重要性,在這次 中發現,我們整理好邏輯想法 對寫 就不會有太多問題了 如下,若有改進的地方,還希望大家可以多多指點。include include include include define row 3 define c...

C語言三子棋遊戲

三子棋是一種只需要行 列 斜中任意一種情況三個相同棋子相連便勝利的遊戲。本程式中,要求玩家與電腦pk,棋盤座標用乙個二維陣列儲存起來,玩家通過鍵盤輸入座標落子,電腦通過srand和rand函式隨機產生座標落子。每次落子都需要判斷遊戲是否結束。1.遊戲選單,供使用者進入遊戲 2.建立初始化棋盤 3.列...

C語言 三子棋遊戲

今天,我們用c語言來寫乙個三子棋遊戲。在整個工程裡建立了三個檔案,分別為main.c game.c game.h,其中 main.c 用於放整個遊戲的框架 game.c與game.h組成玩遊戲的模組。如下 game.h define crt secure no warnings 1 include ...