写一个函数,使给定的一个二维数组3*4进行行列转置,即行列互换,并输出转置前后的结果。
3个回答
展开全部
#include "stdio.h"
void main()
{
int a[3][4] = {{1,2,3,4},{5,6,7,8},{9,0,1,2}};
int b[4][3];
int i, j;
printf("before transform :\n");
for(i=0; i<3; i++)
{
for(j=0; j<4; j++)
{
b[j][i] = a[i][j];
printf("%4d", a[i][j]);
}
printf("\n");
}
printf("after transform :\n");
for(i=0; i<4; i++)
{
for(j=0; j<3; j++)
{
printf("%4d", b[i][j]);
}
printf("\n");
}
}
void main()
{
int a[3][4] = {{1,2,3,4},{5,6,7,8},{9,0,1,2}};
int b[4][3];
int i, j;
printf("before transform :\n");
for(i=0; i<3; i++)
{
for(j=0; j<4; j++)
{
b[j][i] = a[i][j];
printf("%4d", a[i][j]);
}
printf("\n");
}
printf("after transform :\n");
for(i=0; i<4; i++)
{
for(j=0; j<3; j++)
{
printf("%4d", b[i][j]);
}
printf("\n");
}
}
追问
用调用函数的思想
追答
#include "stdio.h"
void transform(int a[3][4], int b[4][3])
{
int i, j;
for(i=0; i<3; i++)
for(j=0; j<4; j++)
b[j][i] = a[i][j];
}
void main()
{
int a[3][4] = {{1,2,3,4},{5,6,7,8},{9,0,1,2}};
int b[4][3];
int i, j;
printf("before transform :\n");
for(i=0; i<3; i++)
{
for(j=0; j<4; j++)
{
printf("%4d", a[i][j]);
}
printf("\n");
}
transform(a, b);
printf("after transform :\n");
for(i=0; i<4; i++)
{
for(j=0; j<3; j++)
{
printf("%4d", b[i][j]);
}
printf("\n");
}
}
展开全部
#include<stdio.h>
void f(int a[3][4],int b[4][3],int x,int y)
{
int i,j;
printf("The data in a:\n");
for(i=0;i<x;i++)
{ for(j=0;j<y;j++)
{ printf("%5d",a[i][j]);
b[j][i]=a[i][j];}
printf("\n");
}
printf("The data in b:\n");
for(i=0;i<y;i++)
{ for(j=0;j<x;j++)
printf("%5d",b[i][j]);
printf("\n");
}
}
void main()
{
int i=3,j=4,b[4][3];
int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};
f(a,b,3,4);
}
void f(int a[3][4],int b[4][3],int x,int y)
{
int i,j;
printf("The data in a:\n");
for(i=0;i<x;i++)
{ for(j=0;j<y;j++)
{ printf("%5d",a[i][j]);
b[j][i]=a[i][j];}
printf("\n");
}
printf("The data in b:\n");
for(i=0;i<y;i++)
{ for(j=0;j<x;j++)
printf("%5d",b[i][j]);
printf("\n");
}
}
void main()
{
int i=3,j=4,b[4][3];
int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};
f(a,b,3,4);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
transpose就是转置函数呀,怎么还要自己写呀?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询