c语言:编写一个函数,使给定的一个二维数组(4*4)转换,即行列互换
时间: 2024-03-05 12:48:52 浏览: 104
二维数组的行列互换(函数调用实现)
4星 · 用户满意度95%
可以使用两重循环,分别遍历原数组的每个元素,然后将其行列互换后存储在一个新的数组中。代码如下:
```c
void transpose(int arr[4][4]) {
int new_arr[4][4];
for (int i = 0; i < 4; i++) {
for (int j = 0; j < 4; j++) {
new_arr[j][i] = arr[i][j];
}
}
for (int i = 0; i < 4; i++) {
for (int j = 0; j < 4; j++) {
arr[i][j] = new_arr[i][j];
}
}
}
```
使用该函数,可以将一个给定的二维数组进行行列互换:
```c
int main() {
int arr[4][4] = {{1, 2, 3, 4},
{5, 6, 7, 8},
{9, 10, 11, 12},
{13, 14, 15, 16}};
transpose(arr);
for (int i = 0; i < 4; i++) {
for (int j = 0; j < 4; j++) {
printf("%d ", arr[i][j]);
}
printf("\n");
}
return 0;
}
```
输出结果为:
```
1 5 9 13
2 6 10 14
3 7 11 15
4 8 12 16
```
阅读全文