正常输入1 2 没有问题,输入200 200 正常反应也没有问题,但是如果当你输入* * 时,他就会忽略scanf直接无限循环“您的输入有误”
不知道如何解决。
void PlayerMove(char board[ROW][COL], int row, int col)
{
int x = 0;
int y = 0;
printf("\n");
printf("玩家走:>\n");
while (1)
{
printf("请输入要下的坐标>\n");
scanf("%d%d", &x, &y);
//判断x,y坐标的合法性
//用户体验优化
if (x >= 1 && x <= row && y >= 1 && y <= col)
{
if (board[x - 1][y - 1] == ' ')
{
board[x - 1][y - 1] = '*';
break;
}
else
{
printf("该坐标已经被占用,请重新输入\n");
continue;
}
}
else
{
printf("输入的坐标违法请重新输入<\n");
}
}
}