其他分享
首页 > 其他分享> > 7-5 选择法排序 (只排三轮) (10 分)

7-5 选择法排序 (只排三轮) (10 分)

作者:互联网

输入10个无序的整数,用选择法对10个整数按升序排序。注意:要求排序只排3轮。

输入格式:

在一行中输入10个用空格间隔的无序整数。

输出格式:

在一行中输出变化后的数组,每个整数输出占5列。

输入样例:

8 5 2 6 7 4 1 9 12 10

输出样例:

    1    2    4    6    7    5    8    9   12   10 


 因为题目要求只排三轮,所以只需要for循环三次。

#include<stdio.h>
int main()
{
    int i, index, k, temp;
    int a[10];
    for(i = 0;i<=10;i++)
    {
        scanf("%d", &a[i]);     //将输入的数依次赋给数组a(从a[0]~a[9])
    }

  /*对这10个数进行排序*/
    for(k = 0;k<3;k++)          //排三次(循环三次)
    {
        index = k;              //index存放最小值所在的下标
        for(i = k+1;i<10;i++)   //寻找最小值所在的下标
        {
            if(a[i]<a[index])   //如果小于所设置的最小值,则进行交换
            {
                index = i;
            }
        }
        temp = a[index];        //最小元素与下标为K的元素进行交换
        a[index] = a[k];
        a[k] = temp;
    }
    for(i = 0;i<10;i++)
    {
        printf("%5d", a[i]);    //输出排序后结果
    }
    return 0;
}

标签:10,输出,int,整数,只排,三轮,输入
来源: https://blog.csdn.net/qq_64682515/article/details/121672710