略懂c语言 2022-04-21 22:56 采纳率: 92.6%
浏览 29
已结题

c语言有帮我看看加一空格

在一行上输出从小到大排好序的n个数,每两个数据之间留一个空格。每两组数据之间留一个空行。
输入
3 3 1 2
5 4 5 2 1 3
输出
1 2 3

1 2 3 4 5
我的代码如下
#include<stdio.h>
int main()
{
int i=0;
int j=0;
int tmp,n;
int arr[20];
while(~scanf("%d",&n)){

for(i=0;i<n;i++)
{
    scanf("%d",&arr[i]);
}
for(i=0;i<n-1;i++)
    {
        for(j=i+1;j<n;j++)
        {
            if(arr[j]<arr[i])
            {
                tmp=arr[i];
                arr[i]=arr[j];
                arr[j]=tmp;
            }
        }
    }

for(i=0;i<n;i++)
{
         if(i<n-1)
printf("%d ",arr[i]);
    else
        printf("%d\n",arr[i]);
}}

return 0;

}

  • 写回答

1条回答 默认 最新

  • qzjhjxj 2022-04-22 00:11
    关注

    供参考:

    #include<stdio.h>
    int main()
    {
        int i=0,j=0,k=0;
        int tmp,n;
        int arr[20];
        while(~scanf("%d",&n)){
    
            for(i=0;i<n;i++)
            {
                 scanf("%d",&arr[i]);
            }
            for(i=0;i<n-1;i++)
            {
               for(j=i+1;j<n;j++)
               {
                   if(arr[j]<arr[i])
                   {
                      tmp=arr[i];
                      arr[i]=arr[j];
                      arr[j]=tmp;
                   }
               }
            }
            k == 0 ? k++:printf("\n"); //修改 每两组数据之间留一个空行。
            for(i=0;i<n;i++)
            {
                if(i<n-1)
                    printf("%d ",arr[i]);
                else
                    printf("%d\n",arr[i]);
            }
        }
        return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 4月30日
  • 已采纳回答 4月22日
  • 创建了问题 4月21日

悬赏问题

  • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
  • ¥15 TYPCE母转母,插入认方向
  • ¥15 如何用python向钉钉机器人发送可以放大的图片?
  • ¥15 matlab(相关搜索:紧聚焦)
  • ¥15 基于51单片机的厨房煤气泄露检测报警系统设计
  • ¥15 路易威登官网 里边的参数逆向
  • ¥15 Arduino无法同时连接多个hx711模块,如何解决?
  • ¥50 需求一个up主付费课程
  • ¥20 模型在y分布之外的数据上预测能力不好如何解决
  • ¥15 processing提取音乐节奏