要交换矩阵的两行元素,需要遍历矩阵的每一列,将两行对应位置的元素进行交换。下面是一个示例代码:
#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
,以及两行的索引 row1
和 row2
。在函数内部,使用一个循环遍历矩阵的每一列,将两行对应位置的元素进行交换。然后在 main
函数中,定义了一个 matrix
数组和两行的索引 row1
和 row2
,并调用 swapRows
函数对矩阵的两行元素进行交换。最后,使用两个嵌套的循环打印交换后的矩阵。运行这段代码,将输出交换后的矩阵:
4 5 6
1 2 3
7 8 9