C语言选择排序
输入一个正整数n(1<n<=10),再输入n个整数,用选择法将它们从小到大排序后输出。
#include <stdio.h>
int main(void)
{
int i,index,k,n,temp,count=0;
int a[10];
printf("Enter n:");
scanf("%d",&n);
printf("Enter %d integers:",n);
for(i=0;i<n;i++)
scanf("%d",&a[i]);
/*对n个数排序*/
for(k=0;k<n-1;k++){
index=k;
for(i=k+1;i<n;i++)
if(a[i]<a[index])
index=i;//index存放最小值所在的下标
count++;
temp=a[index];//最小元素与下标为k的元素交换
a[index]=a[k];
a[k]=temp;
}
printf("After sorted:");//输出n个数组元素的值
for(i=0;i<n;i++)
printf("%d",a[i]);
printf("\n");
printf("%d\n",count);
return 0;
}