关于十数字排序问题

来源:互联网 发布:大数据时代.pdf 编辑:程序博客网 时间:2024/05/16 12:05
听说有冒泡法,选择法,不太懂,谁帮我看下我的这个是什么法的
#include<stdio.h>
void main()/*十个整数排序问题*/
{
    int i,j,max,min;
    int a[10],b[10];
    printf("请输入10个整数:");  /*输入十个整数*/
    for(i=0;i<10;i++)
    {scanf("%d",&a[i]);}
    printf("输入数组为:\n"); /*输出原始排序*/
    for(i=0;i<10;i++)
    {printf("%5d",a[i]);
    if(i==9)printf("\n");}
    
    min=a[0];
    for(i=0;i<10;i++)
    {if(a[i]<min)
    min=a[i],a[i]=a[0],a[0]=min;} /*找出最小值*/
     
    for(i=0;i<10;i++)
    {
        max=a[0];
        for(j=0;j<10;j++)
        {if(a[j]>max)
        max=a[j],a[j]=a[0],a[0]=max;}
        b[i]=max;               /*找出最大值,并将其赋值给B数列,然后将A数列里面这个最大值赋值成最小值,然后循环找最大值*/
        a[0]=min;
    }
    for(i=0;i<10;i++)
    {a[i]=b[9-i];}            /*将A数列重新赋值为B数列的倒序*/


    printf("数组从小到大排列为:\n");
    for(i=0;i<10;i++)
    {printf("%5d",a[i]);
    if(i==9)printf("\n");}
    printf("数组从大到小排列为:\n");
    for(i=0;i<10;i++)
    {printf("%5d",b[i]);
    if(i==9)printf("\n");}


}
0 0
原创粉丝点击