选择法排序是指每次选择所要排序数组中的最大值的数组元素,将这个数组元素的值与最前面没有进行排序的数组元素的值互换即可。
接下来我们在实例中学习选择法排序
例;
#includestdio.h
intmain()
{
inti,j;
inta[10];
intTemp;
intiPos;
printf(为数组元素赋值:\n);
for(i=0;i10;i++)
{
printf(a[%d]=,i);
scanf(%d,a[i]);
}for(i=0;i9;i++)
{
iTemp=a[i];
iPos=i;
for(j=i+1;j10;j++)
{
if(a[j]iTemp)
{
iTemp=a[j];
iPos=j;
}
}
a[iPos]=a[i];
a[i]=iTemp;
}
for(i=0;i10;i++)
{printf(%d\t,a[i]);
if(i==4)
printf(\n);
}
return0;
}(1)声明一个整型数组,并通过键盘为数组元素赋值;
(2)设置一个嵌套循环,第一层循环为前9个数组元素,并在每次循环时将对应当前次数的数组元素设置为最小值,如此下去即可;
(3)循环输出数组中的元素,并在输出5个元素以后进行换行,在下一行输出后面的5个元素。