题解 | #矩阵转置#

矩阵转置

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

#include <stdio.h>

int (*dit(int (*p)[5], int m, int n))[5] {
    int (*a)[5] = (int (*)[5])malloc(n * sizeof(int[5]));
    int i, j;
    for (i = 0; i < m; i++) {
        for (j = 0; j < n; j++) {
            a[j][i] = *(*(p + i) + j);
        }
    }
    return a;
}
int main() {
    int m, n;
    scanf("%d %d", &m, &n);
    int i, j;
    int a[5][5];
    for (i = 0; i < m; i++) {
        for (j = 0; j < n; j++) {
            scanf("%d", &a[i][j]);
        }
    }
    int (*ret)[5] = dit(a, m, n);
    for (i = 0; i < n; i++) {
        for (j = 0; j < m; j++) {
            printf("%d ", ret[i][j]);
        }
        printf("\n");
        //free(ret);
    }
    return 0;
}

全部评论

相关推荐

06-11 17:39
门头沟学院 Java
小呆呆的大鼻涕:卧槽,用户彻底怒了
点赞 评论 收藏
分享
头顶尖尖的程序员:我也是面了三四次才放平心态的。准备好自我介绍,不一定要背熟,可以记事本写下来读。全程控制语速,所有问题都先思考几秒,不要急着答,不要打断面试官说话。
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务