冒泡排序

    添加时间:2013-7-16 点击量:


    #include <stdio.h>


    void swap(int a,int b)

     int temp;
     temp=a;
     a=b;
     b=temp;


    }


    //
    / 升序            /
    //
    //小的往上冒泡
    void maopaosort(int a[],int n)
    {
     for (int i=0;i<n-1;i++)
     {
      for (int j=n-1;j>i;j--)
      {
       if (a[j]<a[j-1])
       {
        swap(&a[j],&a[j-1]);
       }
      }
     }
    }


    //大的往下沉
    void maopaosort2(int a[],int n)
    {
     for (int i=0;i<n-1;i++)
     {
      for (int j=0;j<n-i-1;j++)
      {
       if (a[j]>a[j+1])
       {
        swap(&a[j],&a[j+1]);
       }
      }
     }
    }


    //
    / 降序            /
    //


    void maopaosort3(int a[],int n)
    {
     for (int i=0;i<n-1;i++)
     {
      for (int j=n-1;j>i;j--)
      {
       if (a[j]>a[j-1])
       {
        swap(&a[j],&a[j-1]);
       }
      }
     }
    }



    void printfary(int a[],int n)
    {
     int i=0;
     for (;i<n;i++)
     {
      printf(%d   ,a[i]);
     }
     printf(\n);
    }


    int main()
    {
     int a[4];
     printf(Please enter the Numbers:  \n);
     for (int i=0;i<4;i++)
     {
      
      printf( NO. %d  : ,i+1);
      scanf(%d,&a[i]);
     }
     printf(Before ordering: \n);
     printfary(a,4);


     maopaosort(a,4);
     printf(Ascending order: \n);
     printfary(a,4);


     maopaosort2(a,4);
     printf(Ascending order: \n);
     printfary(a,4);


     maopaosort3(a,4);
     printf(In descending order: \n);
     printfary(a,4);


     return 0;
    }



    运行成果:




    我们永远不要期待别人的拯救,只有自己才能升华自己。自己已准备好了多少容量,方能吸引对等的人与我们相遇,否则再美好的人出现、再动人的事情降临身边,我们也没有能量去理解与珍惜,终将擦肩而过。—— 姚谦《品味》
    分享到: