c语言二维数组行列互换的方法是什么
实现二维数组行列互换的方法是通过创建一个新的二维数组,将原数组的行作为新数组的列,原数组的列作为新数组的行。具体的步骤如下:
- 获取原数组的行数和列数,分别记为
rows
和cols
。 - 创建一个新的二维数组,大小为
cols
行rows
列,记为transposeArray
。 - 使用嵌套循环,将原数组的元素复制到新数组对应位置上,即
transposeArray[j][i] = array[i][j]
。 - 循环结束后,新数组
transposeArray
即为原数组行列互换后的结果。
以下是一个用C语言实现二维数组行列互换的示例代码:
#include <stdio.h>
#define MAX_ROWS 3
#define MAX_COLS 3
void transpose(int array[MAX_ROWS][MAX_COLS], int transposeArray[MAX_COLS][MAX_ROWS], int rows, int cols) {
int i, j;
for(i = 0; i < rows; i++) {
for(j = 0; j < cols; j++) {
transposeArray[j][i] = array[i][j];
}
}
}
int main() {
int array[MAX_ROWS][MAX_COLS] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
int transposeArray[MAX_COLS][MAX_ROWS];
int rows = MAX_ROWS;
int cols = MAX_COLS;
// 调用函数进行行列互换
transpose(array, transposeArray, rows, cols);
// 输出互换后的结果
int i, j;
for(i = 0; i < cols; i++) {
for(j = 0; j < rows; j++) {
printf("%d ", transposeArray[i][j]);
}
printf("\n");
}
return 0;
}
运行以上代码,输出结果为:
1 4 7
2 5 8
3 6 9
这就是二维数组行列互换的方法。
版权声明
本文仅代表作者观点,不代表米安网络立场。
上一篇:vb中replace函数的功能有哪些 下一篇:react安装环境搭建的方法是什么
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。