gpt4 book ai didi

c - 如何反转这个数组?

转载 作者:行者123 更新时间:2023-11-30 21:26:03 25 4
gpt4 key购买 nike

char Chessboard[8][8] = {'r', 'n', 'b', 'q', 'k', 'b', 'n', 'r', '*', '*', '*', '*', '*', '*', '*', '*',\
'.', '.', '.', '.', '.', '.', '.', '.', '.', '.', '.', '.', '.', '.', '.', '.', '.', '.', '.', '.', \
'.', '.', '.', '.', '.', '.', '.', '.', '.', '.', '.', '.', '+', '+', '+', '+', '+', '+', '+', '+',\
'R', 'N', 'B', 'Q', 'K', 'B', 'N', 'R'}; //Initializing board

所以,我有这个棋盘,我想转动它,使其面向对手,也称为反转数组,以便值按相反的顺序排列。我只需要一个程序来反转这个数组并将其存储在数组 Chessboard 中,这样它就不仅仅是一个 printf 函数。

有人可以帮助我吗?

最佳答案

这真的很简单。这不是反转,而是180度的旋转。就坐标而言,您只需将 i,j 映射到 7-i,7-j

您需要为面板创建一个类型:

typedef char Board[8][8];

然后你会使用这个函数:

Board reversed(const Board board)
{
Board result;
for (int i=0; i<8; i++)
for (int j=0; j<8; j++)
result[i,j] = board[7-i,7-j];
return result;
}

关于c - 如何反转这个数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22364056/

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