温馨提示×

C语言数组怎么交换矩阵两行元素

小亿
183
2024-01-09 21:56:33
栏目: 编程语言

要交换矩阵的两行元素,需要遍历矩阵的每一列,将两行对应位置的元素进行交换。下面是一个示例代码:

#include <stdio.h>

#define ROWS 3
#define COLS 3

// 交换矩阵的两行元素
void swapRows(int matrix[ROWS][COLS], int row1, int row2) {
    for (int col = 0; col < COLS; col++) {
        // 交换两行对应位置的元素
        int temp = matrix[row1][col];
        matrix[row1][col] = matrix[row2][col];
        matrix[row2][col] = temp;
    }
}

int main() {
    int matrix[ROWS][COLS] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
    int row1 = 0;
    int row2 = 1;

    // 交换矩阵的两行元素
    swapRows(matrix, row1, row2);

    // 打印交换后的矩阵
    for (int row = 0; row < ROWS; row++) {
        for (int col = 0; col < COLS; col++) {
            printf("%d ", matrix[row][col]);
        }
        printf("\n");
    }

    return 0;
}

这段代码中,首先定义了一个 swapRows 函数,该函数接受一个二维数组 matrix,以及两行的索引 row1row2。在函数内部,使用一个循环遍历矩阵的每一列,将两行对应位置的元素进行交换。然后在 main 函数中,定义了一个 matrix 数组和两行的索引 row1row2,并调用 swapRows 函数对矩阵的两行元素进行交换。最后,使用两个嵌套的循环打印交换后的矩阵。运行这段代码,将输出交换后的矩阵:

4 5 6 
1 2 3 
7 8 9 

0