时间在哪里853 2022-11-12 20:06 采纳率: 76.5%
浏览 49
已结题

功能说明:从键盘输入5行6列整型二维数组的各元素,然后将数组各列元素分别按升序排序,再按行输出数组的各元素。


#include<stdio.h>
int main()
{
    int a[5][6],i,j,k,t,count=0;
    for(i=0;i<5;i++)
       {
        for(j=0;j<6;j++)
        scanf("%d",&a[i][j]);
       }
       for(j=0;j<6;j++)
       {
           for(i=1;i<5;i++)
            for(k=0;k<5;k++)
            if(a[k][j]>a[k+1][j])
            {
                t=a[k][j];
                a[k][j]=a[k+1][j];
                a[k][j]=t;
            }
            for(i=0;i<5;i++)
                {for(j=0;j<6;j++)
                printf("%4d",a[i][j]);
            printf("\n");
       }}
    return 0;
}

怎么实现题目要求的那样,我这为什么原样输出了

  • 写回答

1条回答 默认 最新

  • qzjhjxj 2022-11-12 21:19
    关注

    改动处见注释,供参考:

    #include<stdio.h>
    int main()
    {
        int a[5][6],i,j,k,t,count=0;
        for(i=0;i<5;i++)
        {
            for(j=0;j<6;j++)
                scanf("%d",&a[i][j]);
        }
        for(j=0;j<6;j++)
        {
            for(i=0;i<4;i++)     //(i=1;i<5;i++) 修改
                for(k=0;k<4-i;k++)//(k=0;k<5;k++) 修改
                    if(a[k][j]>a[k+1][j])
                    {
                        t=a[k][j];
                        a[k][j]=a[k+1][j];
                        a[k+1][j]=t;  //a[k][j]=t; 修改
                    }
        }//修改
        for(i=0;i<5;i++)
        {
            for(j=0;j<6;j++)
                printf("%4d",a[i][j]);
            printf("\n");
        }
        return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 11月24日
  • 已采纳回答 11月16日
  • 创建了问题 11月12日

悬赏问题

  • ¥15 ue5 .3之前好好的现在只要是激活关卡就会崩溃
  • ¥50 MATLAB实现圆柱体容器内球形颗粒堆积
  • ¥15 python如何将动态的多个子列表,拼接后进行集合的交集
  • ¥20 vitis-ai量化基于pytorch框架下的yolov5模型
  • ¥15 如何实现H5在QQ平台上的二次分享卡片效果?
  • ¥15 python爬取bilibili校园招聘网站
  • ¥30 求解达问题(有红包)
  • ¥15 请解包一个pak文件
  • ¥15 不同系统编译兼容问题
  • ¥100 三相直流充电模块对数字电源芯片在物理上它必须具备哪些功能和性能?