c-将一组数排序

方法一:简单,大家就用这个吧!

#include
#include
#include
#include
    int main()
    {
    int a[6]={6,5,4,3,2,1};
    int n=6;
    int i,j;
    for(i=0;i<=n-2;i++)//从第一个数(下标为0)到倒数第二个数 (下标是n-2)
    {
        for(j=i+1;j<=n-1;j++)//从i+1个数到最后一个数 (下标是n-1)
        {
            if(a[i]>a[j])
            {
                int t=a[i];
                a[i]=a[j];
                a[j]=t;
            }
        }
    }
    for(i=0;i     {
        printf("%d ",a[i]);
    }
        return 0; 
    }

方法二:较难理解

下面为我写的一点思路

c-将一组数排序_第1张图片

#include
#include
#include
#include
    int main()
    {
    int a[6]={6,1,2,4,3,5};
    int n=6,minindex,i,j;
    
    for(i=0;i     {
        //在n的数里面找最小下标minindex,然后将i位置和minindex 位置的数交换 
        //在n-1个数里面找最小下标minindex…… 
        minindex=i;
        for(j=i+1;j             if(a[minindex]>a[j])
                minindex=j;
        if(minindex!=i)
        {
            int t=a[i];
            a[i]=a[minindex];
            a[minindex]=t;
            
        }
    }
    for(i=0;i         printf("%d ",a[i]);
    
        return 0; 
    }
     

     

你可能感兴趣的:(学习思路,c语言,算法,java)