
C语言。写一个函数,change(int a[][2]),要求在主函数中输入一个4行2列的矩阵,用change函数实现行列互换
1个回答
展开全部
由于是指定了大小,所以没必要什么互换了。直接将数据copy到另外一个数组就OK了~~
如将数组:
1 2
3 4
5 6
7 8
行列互换后得到: 1 3 5 7
2 4 6 8
如果要在主函数中输出互换后的结果,那就讲数组b定义成全局变量吧…………
#include<stdio.h>
int b[2][4];
void change(int a[][2])
{
int i=0,j=0;
for(;i<4;i++)
{
b[0][i]=a[i][0];
b[1][i]=a[i][1];
}
}
void main()
{
int i=0,j=0;
int a[4][2]={{1,2},{3,4},{5,6},{7,8}};
change(a);
for(j=0;j<2;j++)
{
for(i=0;i<4;i++)
printf("%d ",b[j][i]);
printf("\n");
}
}
如将数组:
1 2
3 4
5 6
7 8
行列互换后得到: 1 3 5 7
2 4 6 8
如果要在主函数中输出互换后的结果,那就讲数组b定义成全局变量吧…………
#include<stdio.h>
int b[2][4];
void change(int a[][2])
{
int i=0,j=0;
for(;i<4;i++)
{
b[0][i]=a[i][0];
b[1][i]=a[i][1];
}
}
void main()
{
int i=0,j=0;
int a[4][2]={{1,2},{3,4},{5,6},{7,8}};
change(a);
for(j=0;j<2;j++)
{
for(i=0;i<4;i++)
printf("%d ",b[j][i]);
printf("\n");
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询