LI_ant 2022-03-27 10:13 采纳率: 50%
浏览 12
已结题

求转置后的矩形乱码是怎么回事

/生成 NN 矩阵将矩阵转置后输出。*/
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
#define N 3
main()
{
int a[N][N], b[N][N],i,j;
srand(time(NULL));
for (i = 0; i < N; i++)
for (j = 0; j < N; j++)
a[i][j] = rand() % 5;

    printf("原始矩阵:\n");
    for (i = 0; i < N; i++)
    {
        for (j = 0; j < N; j++)
            printf("%4d", a[i][j]);
        printf("\n");
    }
    for (i = 0; j < N; i++)
        for (j = 0; j < N; j++)
            b[i][j] = a[j][i];
    printf("转置后的矩阵:\n");
    for (i = 0; i < N; i++)
    {
        for (j = 0; j < N; j++)
            printf("%4d", b[i][j]);
        printf("\n");
    }

}

  • 写回答

2条回答 默认 最新

  • 关注

    这里应该都是i,打错了

    img


    修改后:

    img

    #include <stdio.h>
    #include <time.h>
    #include <stdlib.h>
    #define N 3
    main()
    {
    int a[N][N], b[N][N],i,j;
    srand(time(NULL));
    for (i = 0; i < N; i++)
    for (j = 0; j < N; j++)
    a[i][j] = rand() % 5;
    
        printf("原始矩阵:\n");
        for (i = 0; i < N; i++)
        {
            for (j = 0; j < N; j++)
                printf("%4d", a[i][j]);
            printf("\n");
        }
        for (i = 0; i < N; i++)
            for (j = 0; j < N; j++)
                b[i][j] = a[j][i];
        printf("转置后的矩阵:\n");
        for (i = 0; i < N; i++)
        {
            for (j = 0; j < N; j++)
                printf("%4d", b[i][j]);
            printf("\n");
        }
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

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

悬赏问题

  • ¥20 数学建模,尽量用matlab回答,论文格式
  • ¥15 昨天挂载了一下u盘,然后拔了
  • ¥30 win from 窗口最大最小化,控件放大缩小,闪烁问题
  • ¥20 易康econgnition精度验证
  • ¥15 msix packaging tool打包问题
  • ¥28 微信小程序开发页面布局没问题,真机调试的时候页面布局就乱了
  • ¥15 python的qt5界面
  • ¥15 无线电能传输系统MATLAB仿真问题
  • ¥50 如何用脚本实现输入法的热键设置
  • ¥20 我想使用一些网络协议或者部分协议也行,主要想实现类似于traceroute的一定步长内的路由拓扑功能