选择排序
算法
void SelectSort(int a[],int n){ //选择排序
int k,temp;
int i,j;
for(i=0;i<n;i++)
{
k=i;
for(j=i+1;j<n;j++)
{
if(a[j]<a[k])
k=j;
}
if(k!=i)
{
temp=a[i];
a[i]=a[k];
a[k]=temp;
}
}
}
例题
输入十个整数,从小到大排列
代码
#include<stdio.h>
int main()
{
int a[10];
int t,k;
for(int g=0;g<10;g++)
scanf("%d",&a[g]);
for(int i=0;i<10;i++)
{
k=i;
for(int j=i+1;j<10;j++)
{
if(a[j]<a[k])
{
k=j;
}
}
if(k!=i)
{
t=a[i];
a[i]=a[k];
a[k]=t;
}
}
for(int g=0;g<10;g++)
printf("%d ",a[g]);
return 0;
}