题目:
编写函数,使其能将二维数组(5*3)中的数据进行行列互换。(参考函数原型:void tran(int array[5][3], int out_array[3][5])) 输入输出格式要求: out_array是用于保存行列交换之后的结果的数组 碰到异常情况输出error(参数为null) 例如: array[5][3] = {{1,2,3},{4,5,6},{7,8,9},{10,11,12},{13,14,15}} 调用tran函数之后 out_array[3][5] = {{1,4,7,10,13},{2 5 8 11 14},{3 6 9 12 15}}
分析: 行列互换即为out_array[i][j] = array[j][i]
#include <stdio.h>
void tran(int array[5][3], int out_array[3][5]);
int main()
{
int a[5][3],o[3][5];
for(int i=0;i<5;i++)
{
for(int m=0;m<3;m++)
{
scanf("%d",o[i][m]);
}
}
tran (a,o);
for(int i=0;i<5;i++)
{
for(int m=0;m<3;m++)
{
printf("%d",o[i][m]);
}
}
return 0;
}
void tran(int array[5][3], int out_array[3][5])
{
if(array==NULL || out_array==NULL)
{printf("error");return ;}
for(int i=0;i<3;i++)
{
for(int m=0;m<5;m++)
{
out_array[i][m]=array[m][i];
}
}
}