题解 | #矩阵转置#

矩阵转置

http://www.nowcoder.com/practice/351b3d03e410496ab5a407b7ca3fd841

#include<stdio.h>
#include<malloc.h>
int main(void)
{
    int n,m;
    int **num1;
    int **num2;
    scanf("%d %d",&n,&m);
    num1=(int **)malloc(sizeof(int *)*n);
    for(int i=0;i<n;i++)
        num1[i]=(int *)malloc(sizeof(int)*m);
    num2=(int **)malloc(sizeof(int *)*m);
    for(int i=0;i<m;i++)
        num2[i]=(int *)malloc(sizeof(int)*n);
    for(int i=0;i<n;i++)
        for(int j=0;j<m;j++)
            scanf("%d",&num1[i][j]);
    for(int i=0;i<n;i++)
        for(int j=0;j<m;j++)
        {
            num2[j][i]=num1[i][j];//转置矩阵就是将第一行变成第一列,将行数和列数进行转换即可
        }
    for(int i=0;i<m;i++)
    {
        for(int j=0;j<n;j++)
            printf("%d ",num2[i][j]);
        printf("\n");
    }
    return 0;
}
全部评论

相关推荐

11-27 17:08
已编辑
牛客_产品运营部_私域运营
腾讯 普通offer 24k~26k * 15,年包在36w~39w左右。
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务