我刚做了一个游戏,并在开始时提示用户输入他们想要cpu的颜色。有2种颜色,黑色和白色,如果用户将计算机键入白色,则用户将先移动,否则计算机将首先移动。我试图首先将计算机实现为白色,但我似乎没有太多运气。
if (color == 'W') {
int player = 0;
int computer = 0;
printBoard(boardgame, size);
player++;
computer += 2;
do {
if ((player + 1) % 2) {
playerMove(oppositeColor(color), boardgame, size);
player++;
numbermoves++;
}
if (computer % 2) {
computerMove(color, boardgame, size);
computer++;
numbermoves++;
}
} while (numbermoves < size * size);
}
感谢任何帮助,谢谢。
答案 0 :(得分:0)
计算机移动和玩家移动之间应该没有区别。这只是一种颜色的举动。对于用户,您要求输入[颜色];对于计算机,您计算[颜色]的移动,例如:
int numbermoves = 0;
char playerColor;
printf("What color do you want (W/B)?");
scanf ("%c", &playerColor);
do {
if ((numbermoves%2)==0) { // white
if (playerColor=='W')
askMove ('W', &move);
else calcMove('W', &move);
putMove('W', &move);
}
else {
if (playerColor=='B')
askMove ('B', &move);
else calcMove('B', &move);
putMove('B', &move);
}
numbermoves++;
} while (numbermoves < size * size);