编写函数void fun(int a[][4]),其功能是实现二维数组赋值及转置。main 函数中输入
时间: 2023-12-14 18:40:19 浏览: 51
以下是实现该功能的代码:
```
#include <stdio.h>
void fun(int a[][4]) {
int i, j, temp;
// 赋值
for (i = 0; i < 4; i++) {
for (j = 0; j < 4; j++) {
printf("请输入a[%d][%d]的值:", i, j);
scanf("%d", &a[i][j]);
}
}
// 转置
for (i = 0; i < 4; i++) {
for (j = i + 1; j < 4; j++) {
temp = a[i][j];
a[i][j] = a[j][i];
a[j][i] = temp;
}
}
}
int main() {
int a[4][4], i, j;
fun(a);
printf("转置后的数组为:\n");
for (i = 0; i < 4; i++) {
for (j = 0; j < 4; j++) {
printf("%d ", a[i][j]);
}
printf("\n");
}
return 0;
}
```
程序中,首先在 `fun()` 函数中实现了对二维数组的赋值和转置操作。其中,赋值操作使用了两重循环,分别输入每个元素的值;转置操作也使用了两重循环,通过交换数组中的行和列来实现转置。
然后,在 `main()` 函数中调用 `fun()` 函数,并输出转置后的数组。
注意,程序中的二维数组 `a` 的大小为 4*4,如果需要处理其他大小的二维数组,需要将程序中的相应部分进行修改。