三子棋,又稱井字棋的實現

2021-07-15 12:07:48 字數 1437 閱讀 2908

編寫乙個三子棋你需要知道的是需要哪些實現步驟:

首先,你需要有乙個棋盤,這樣你就需要編寫乙個初始化棋盤的函式,並能夠將棋盤列印出來;

棋盤麼,就像這種樣子:

這個採用二維陣列就可以來實現了;

接著,你可以選擇實現pvp或者pve,這裡我實現的是pve,也就是和電腦下,這樣,你需要兩個函式,乙個是給步驟,你自己下棋,另乙個就是你需要電腦下棋,電腦你可以產生隨機值來實現。在這裡,你自己下棋的話需要輸入對應的格仔的座標,比如1.1 2.2 3.3之類的;

另外,你需要判斷到底是誰贏了,又或者是平局。

大體思路就像這樣,接著,你需要思考的更加深入,如果該位置已經放入了棋子,那麼你需要重新輸入;棋盤已經滿了,你又不能再輸入了,那麼此刻你先要判斷到底有人贏了沒,沒有的話就是平局了。

#define _crt_secure_no_warings 1

#include#include#include#include#define rows 3//採用巨集讓棋盤大小便於修改

#define cols 3

void init(char arr[rows][cols])//棋盤初始化 }}

void print(char arr[rows][cols])//列印棋盤 }}

void player(char arr[rows][cols])//人下棋函式

else

print(arr);

}void computer(char arr[rows][cols])//電腦下棋

} print(arr);

}int full(char arr[rows][cols])//判斷棋盤是否滿了

} return 0;

}int judge(char arr[rows][cols])//判斷誰贏了,或者平局

if (arr[1][1] == 'o')

}if ((arr[0][2] == arr[1][1]) && (arr[1][1] == arr[2][0]))

if (arr[1][1] == 'o')

}for (i = 0; i < rows; i++)

if (arr[i][1] == 'o')

}} for (i = 0; i < cols; i++)

if (arr[0][i] == 'o')

}} return 0;

}int main()

else

if (full(arr) == 0)

else if (judge(arr) == -1)

else

}if (full(arr) == 1)

else if (judge(arr) == -1)

}} system("pause");

return 0;

}

三子棋遊戲(井字棋)

1 首先,我們得先要有乙個棋盤,那我們就得先編寫乙個函式來將棋盤初始化,再編寫乙個函式負責列印我們的棋盤。我們列印的棋盤為 2 有了棋盤後,就可以下棋了。我們可以編寫兩個函式,乙個是玩家下棋子,乙個是電腦隨機下棋子。3 最後就是判斷是誰贏得了比賽,還是平局。這些就是三子棋的大致步驟了。以下就是實現三...

c語言程式設計三子棋(井字棋)

標頭檔案 test.h ifndef three chess h 防止標頭檔案被重複,包含 也可以用 pragma once define three chess h include include include pragma warning disable 4996 vs中解決scanf函式不能...

c語言井字棋(三子棋)簡易版

遊戲的棋盤為3 3 的九宮格模式,玩家 vs 電腦 只要玩家 電腦 的某個方向的棋子連成一條線,就是玩家 電腦 或獲勝。1 表示玩家 2 表示電腦。此時就算是玩家勝利 玩家進行選擇 0 表示開始遊戲,1 表示退出遊戲 此處我們需要進行判斷玩家輸入是否有誤,輸入的值必須是0或者1,其他錯誤輸入需要進行...