c - 尝试在嵌套 for 循环内交换二维数组中的值

标签 c arrays

我已经为此苦苦挣扎了一段时间。希望有人可以提供帮助。开始。我有在嵌套 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");  
    }
}

最佳答案

if(board[row_i][col_j] == 2 && board[row_i][col_j] == 1)

这个测试总是错误的。您要求同一个变量“board[row_i][col_j]”同时为 2 和 1。

关于c - 尝试在嵌套 for 循环内交换二维数组中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35566985/

相关文章:

在 MVSC 中为 cURL 创建字符串流

c - CodeBlock 中的结构大小错误

java - 来自对象的字符串列表

c - 我必须 "free"rootValue,但是在返回它之前我该怎么做?

c - frama-c wp 常量变量和常量数组

arrays - 使用 Vapor3 将多条记录插入数据库

c - 如果我定义一个 X 元素的字符数组并向其中添加 Y (>X) 元素会怎样?

arrays - 如果单个元素解码失败,Swift JSONDecode 解码数组将失败

java - 两个数组中最大的元素

使用 if else 比较字符串