gpt4 book ai didi

c - Tic Tac Toe,用电脑玩(随机)

转载 作者:行者123 更新时间:2023-11-30 19:43:38 25 4
gpt4 key购买 nike

if (turn == tick) {
/*first player*/
Form1->Label1->Caption = "X pyr";
fields[row][kol] = 1;
Form1->BitBtn1->Glyph->LoadFromFile("tick.bmp");
turn = tack;
}

else {
do {
//random
row = rand() % 3;
kol = rand() % 3;
}
while (fields[row][kol] == 0);

/*cpu*/
Form1->Label1->Caption = "CPU";
fields[row][kol] = 2;
Form1->BitBtn1->Glyph->LoadFromFile("tack.bmp");
turn = tick;
}

}

主要问题是,当我采取行动时,计算机只需单击第一个元素,并且在每次下一步行动后都会执行相同的操作。计算机只是使用第一个 TicTacToe 游戏棋盘方 block 。

最佳答案

如果我理解正确,fields 变量包含棋盘,其中 0 表示未占用的单元,1 表示人类玩家,2 表示 CPU。

这种情况下while的终止条件是错误的while(fields[row][kol] == 0);,必须在cell被占用时循环(试图寻找空闲细胞)。

do {
//random
row = rand() % 3;
kol = rand() % 3;
}
while (fields[row][kol] != 0);

注意:您将字段的所有元素初始化为 0,这些元素不会出现在代码中。

关于c - Tic Tac Toe,用电脑玩(随机),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29400523/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com