c语言函数实现3*3二维数组的转置
时间: 2023-08-12 16:56:57 浏览: 123
013 C语言用二维数组实现矩阵转置
5星 · 资源好评率100%
您可以使用以下代码实现3x3二维数组的转置:
```c
#include <stdio.h>
void transpose(int arr[3][3]) {
int i, j, temp;
for (i = 0; i < 3; i++) {
for (j = i + 1; j < 3; 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 matrix:\n");
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
printf("%d ", arr[i][j]);
}
printf("\n");
}
transpose(arr);
printf("Transposed matrix:\n");
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
printf("%d ", arr[i][j]);
}
printf("\n");
}
return 0;
}
```
这段代码中,`transpose` 函数用于实现数组的转置,它通过遍历数组的上三角部分(不包括对角线),将每个元素与对应的对角线上元素进行交换。然后,`main` 函数中定义一个3x3的二维数组 `arr`,并调用 `transpose` 函数进行转置操作。最后,按行打印原始矩阵和转置后的矩阵。
阅读全文