zoukankan      html  css  js  c++  java
  • 数据的交换输出

    Problem Description
    输入n(n<100)个数,找出其中最小的数,将它与最前面的数交换后输出这些数。
     Input
    输入数据有多组,每组占一行,每行的开始是一个整数n,表示这个测试实例的数值的个数,跟着就是n个整数。n=0表示输入的结束,不做处理。
     Output
    对于每组输入数据,输出交换后的数列,每组输出占一行。
     Sample Input
    4 2 1 3 4
    5 5 4 3 2 1
    0
     Sample Output
    1 2 3 4
    1 4 3 2 5
     
    code:
     

    #include<stdio.h>
    int main()
    {
           int n,i,j,a[100],m,t,e;
           while(scanf("%d",&n)!=EOF&&(n!=0))           //(n!=0)作用:n=0表示输入的结束,不做处理。
           {

                    for(i=0;i<n;i++)
                          scanf("%d",&a[i]);
                    m=a[0];
                    j=0;                                       //j要还原为0;
                    for(i=1;i<n;i++)
                    {
                              if(a[i]<m)
                              {
                                     m=a[i];
                                      j=i;
                              }

                   }          
                 t=a[j];a[j]=a[0];a[0]=t;
                 for(e=0,i=0;i<n;i++)                    //注意此处e的作用,输出格式值得借鉴;
                {

                       if(e!=0)
                       printf(" ");
                       printf("%d",a[i]);
                       e++;
               }
            printf(" ");
         }
       return 0;
    }

  • 相关阅读:
    解决deepin没有ll等命令的办法
    解决客户端Redis中文乱码问题
    Redis 常用命令操作
    Redis常用数据类型
    Redis 入门
    Ubuntu18.04 安装netstat
    Ubuntu18.04 安装redis
    常用sql:按照表中的某一列对数据进行分组,统计数据条数
    date( ) 日期函数
    tp5 apache 转 nginx 需要配置的伪静态
  • 原文地址:https://www.cnblogs.com/gongpulin/p/3884515.html
Copyright © 2011-2022 走看看