用c语言写一个代码,要求:在main函数中,先从键盘上输入一个3行3列数组的各个元素的值,然后调用函数fun,其功能是按主对角线进行转置,然后在main函数中输出转置后的数组。
时间: 2024-05-09 22:15:55 浏览: 37
请看下面的代码:
```c
#include <stdio.h>
void fun(int arr[][3], int n) {
int i, j, temp;
for (i = 0; i < n; i++) {
for (j = i+1; j < n; j++) {
temp = arr[i][j];
arr[i][j] = arr[j][i];
arr[j][i] = temp;
}
}
}
int main() {
int arr[3][3], i, j;
printf("请输入一个3行3列数组的各个元素的值:\n");
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
scanf("%d", &arr[i][j]);
}
}
fun(arr, 3);
printf("转置后的数组为:\n");
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
printf("%d ", arr[i][j]);
}
printf("\n");
}
return 0;
}
```
在上面的代码中,我们首先定义了一个函数`fun`,它的参数是一个二维数组和该数组的行数。这个函数的功能是按主对角线进行转置。然后在`main`函数中,我们先从键盘上输入一个3行3列数组的各个元素的值,然后调用函数`fun`进行转置,并输出转置后的数组。
阅读全文