C語(yǔ)言數(shù)組怎么交換矩陣兩行元素

小億
149
2024-01-09 21:56:33

要交換矩陣的兩行元素,需要遍歷矩陣的每一列,將兩行對(duì)應(yīng)位置的元素進(jìn)行交換。下面是一個(gè)示例代碼:

#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++) {
        // 交換兩行對(duì)應(yīng)位置的元素
        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;
}

這段代碼中,首先定義了一個(gè) swapRows 函數(shù),該函數(shù)接受一個(gè)二維數(shù)組 matrix,以及兩行的索引 row1row2。在函數(shù)內(nèi)部,使用一個(gè)循環(huán)遍歷矩陣的每一列,將兩行對(duì)應(yīng)位置的元素進(jìn)行交換。然后在 main 函數(shù)中,定義了一個(gè) matrix 數(shù)組和兩行的索引 row1row2,并調(diào)用 swapRows 函數(shù)對(duì)矩陣的兩行元素進(jìn)行交換。最后,使用兩個(gè)嵌套的循環(huán)打印交換后的矩陣。運(yùn)行這段代碼,將輸出交換后的矩陣:

4 5 6 
1 2 3 
7 8 9 

0