谪仙749 2022-05-26 14:54 采纳率: 71.4%
浏览 36
已结题

行指针,数组行列转换,

定义两个数组a[2][3]和b[3][2],将数组a[2][3]初始化后进行行列转换,如a[1][2] 进行行列转换后为b[2][1], 把转换得到的新值赋予数组b,输出转置后的数组。要求将数组转置的程序写为一个函数形式。程序框架如下:#include<stdio.h>void Transpose()//定义两个行指针变量(见讲义11.3节),用于接收两个二维数组名{ int i,j; for(i=0;i<2;i++) for(–) dst[j][i] = src[i][j];}int main(){ int a[2][3]={0,2,4,6,8,10},b[3][2],i,j; Transpose(a,b); for(i=0;i<3;i++) { for(j = 0;j<2; j++) printf("%d ",) ; //打印转置后的数组 printf("\n"); } return 0;}

  • 写回答

1条回答 默认 最新

  • taigumodao 2022-05-26 15:24
    关注

    #include<stdio.h>
    void Transpose(int (*src)[3],int (*dst)[2])
    {
    int i,j;
    for(i=0;i<2;i++)
    for(j=0;j<3;j++)
    dst[j][i] = src[i][j];
    }
    int main()
    {
    int a[2][3]={0,2,4,6,8,10},b[3][2],i,j;
    Transpose(a,b);
    for(i=0;i<3;i++)
    {
    for(j = 0;j<2; j++) printf("%d ",b[i][j]);
    printf("\n");
    }
    return 0;
    }

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 6月4日
  • 已采纳回答 5月27日
  • 创建了问题 5月26日