您的位置:首页 > 其它

关于十数字排序问题

2015-11-27 12:47 393 查看
听说有冒泡法,选择法,不太懂,谁帮我看下我的这个是什么法的

#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");}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: