我一直在努力解决这个问题。希望有人可以提供帮助。开始。我有一个二维数组,在嵌套的for循环中初始化。如果数组mod(%)2的维数是偶数(d%2 == 0),我想将数组矩阵中的元素2和元素1相互交换。
我正在努力解决的另一个想法是,我可以简单地将1和2显式地分配给for循环中数组的索引,而不是执行交换。
这是我到目前为止的代码..我感谢任何有助于我找到正确解决方案的输入。
if (d % 2 == 0)
{
for (row_i = 0; row_i < d; row_i++)//loops through rows
{
for(col_j = 0; col_j < d; col_j++) //loops through column
{
board[row_i][col_j] = multi_dim--;
if(board[row_i][col_j] == 2 && board[row_i][col_j] == 1)
{
int hold = board[d][d -2];
board[d][d - 2] = board[d][d - 1];
board[d][d - 1] = hold;
}
printf(" %2d ", board[row_i][col_j]);
}
printf("\n");
}
}
答案 0 :(得分:1)
if(board[row_i][col_j] == 2 && board[row_i][col_j] == 1)
此测试始终为false。你要求同一个变量'board [row_i] [col_j]'同时为2和1。