运用C语言的指针将一个3X3的整型二维数组转置
时间: 2024-02-06 09:12:07 浏览: 89
013 C语言用二维数组实现矩阵转置
5星 · 资源好评率100%
可以使用以下代码来实现一个3x3的整型二维数组转置:
```c
#include <stdio.h>
void transpose(int arr[][3], int size){
int i, j, temp;
for(i = 0; i < size; i++){
for(j = i+1; j < size; j++){
temp = arr[i][j];
arr[i][j] = arr[j][i];
arr[j][i] = temp;
}
}
}
int main(){
int arr[3][3] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
int i, j;
printf("Original array:\n");
for(i = 0; i < 3; i++){
for(j = 0; j < 3; j++){
printf("%d ", arr[i][j]);
}
printf("\n");
}
transpose(arr, 3);
printf("\nTransposed array:\n");
for(i = 0; i < 3; i++){
for(j = 0; j < 3; j++){
printf("%d ", arr[i][j]);
}
printf("\n");
}
return 0;
}
```
在这个代码中,我们定义了一个`transpose`函数来执行转置操作。该函数接受一个二维数组和数组的大小作为参数,并使用两个嵌套的循环来对数组进行转置。在主函数中,我们首先打印出原始的二维数组,然后调用`transpose`函数来转置它,最后再打印出转置后的数组。
运行这个程序,我们可以得到以下输出:
```
Original array:
1 2 3
4 5 6
7 8 9
Transposed array:
1 4 7
2 5 8
3 6 9
```
可以看到,原始的二维数组被成功地转置了。
阅读全文