/*

 //实现下标法排序

 */


#include <stdio.h>

int main()

{

    //定义一个数组

    int arr[6]={1,4,5,1,8,17};

    

    //打印数组内如

    for (int i=0; i<6; i++) {

        

        printf("%d\t",arr[i]);

    }

    printf("\n");

    

    

    //定义一个下标变量

    int x;

    

    //求数组的最大值

    int max=arr[x];

    

    for(int j=0;j<sizeof(arr)/sizeof(int);j++)

    {

        x=j;

        max=arr[x];

        //进过比较来找出  最大值

        for(int i=j;i<6;i++)

        {

            if (max<arr[i]) {

                max=arr[i];

                x=i;//确定最大值的下标

            }


        }

        //第j位和最大值交换

        int temp=arr[j];

        arr[j]=arr[x];

        arr[x]=temp;

    }//外层end

    

    //输出交换后的数组

    for(int i=0;i<6;i++)

    {

    

        printf("%d\t",arr[i]);

    }

    

    return 0;


}