c语言编程实现二维数组(三行三列)转置
时间: 2024-06-16 21:08:30 浏览: 141
要实现二维数组的转置,可以使用两层循环来完成。首先,创建一个二维数组,并将原始数组的行和列互换,即可得到转置后的数组。
以下是C语言的代码示例:
```c
#include <stdio.h>
#define ROWS 3
#define COLS 3
void transpose(int arr[ROWS][COLS], int transposed[COLS][ROWS]) {
for (int i = 0; i < ROWS; i++) {
for (int j = 0; j < COLS; j++) {
transposed[j][i] = arr[i][j];
}
}
}
int main() {
int arr[ROWS][COLS] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
int transposed[COLS][ROWS];
transpose(arr, transposed);
printf("原始数组:\n");
for (int i = 0; i < ROWS; i++) {
for (int j = 0; j < COLS; j++) {
printf("%d ", arr[i][j]);
}
printf("\n");
}
printf("\n转置后的数组:\n");
for (int i = 0; i < COLS; i++) {
for (int j = 0; j < ROWS; j++) {
printf("%d ", transposed[i][j]);
}
printf("\n");
}
return 0;
}
```
运行以上代码,输出结果如下:
```
原始数组:
1 2 3
4 5 6
7 8 9
转置后的数组:
1 4 7
2 5 8
3 6 9
```
阅读全文