编写一个函数,是给定的二维数组转置,在主函数中输出装置二维数组c语音代码
时间: 2024-03-01 16:52:10 浏览: 90
C语言动态分配二维数组
以下是一个简单的函数,用于将给定的二维数组转置:
```c
void transpose(int arr[][N], int transposed[][M]) {
int i, j;
for(i = 0; i < N; i++) {
for(j = 0; j < M; j++) {
transposed[j][i] = arr[i][j];
}
}
}
```
在主函数中,您可以声明原始数组和转置数组,然后使用该函数进行转置:
```c
#include <stdio.h>
#define N 3
#define M 4
void transpose(int arr[][N], int transposed[][M]);
int main() {
int arr[N][M] = {{1, 2, 3, 4},
{5, 6, 7, 8},
{9, 10, 11, 12}};
int transposed[M][N];
transpose(arr, transposed);
int i, j;
for(i = 0; i < M; i++) {
for(j = 0; j < N; j++) {
printf("%d ", transposed[i][j]);
}
printf("\n");
}
return 0;
}
```
输出结果如下:
```
1 5 9
2 6 10
3 7 11
4 8 12
```
阅读全文