排序的基本方法:选择排序
原理跟我们生活十分贴近,从一组数中扫一眼,找到最小的,放到最左边,第二小的放在左起第二个,以此类推!
下面是源代码
#include<stdio.h>
int main(void)
{
int a[10]={6,1,4,5,7,8,9,2,3,10};
int i,k,pos;
for(i=0;i<10;i++)
{
pos=i;
for(k=i+1;k<10;k++)
{
if(a[k]<a[pos])
{
pos=k;
}
}
if(pos!=i)
{
int c;
c=a[i];
a[i]=a[pos];
a[pos]=c;
}
}
for(i=0;i<10;i++)
{
printf("%d ",a[i]);
}
}
以上是输出结果。
讲解:
设立一个变量存储i的值,由于i是从0开始,也就是说,我们这个pos的值,就是代表了数组中的第几位数字。可以用a[pos]代表需要进行交换的最左边的数字。
遍历数组,如果有数字小于最左端的数字,则记录下他的下标
检查下标是否更换,如果更换了则对下标内的值进行调换。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)