C程,选择排序法问题,各位帮帮忙啊...
题目:输入10个数按从小到大的顺序排列。这个虽然学过有段时间了,可我对这个题的算法还是不太清楚,那位可帮我详细讲解一下啊,一定要详细啊,这个问题对我非常重要,这里先谢啦…
程序代码:
#include <stdio.h>
main()
{ int a[10],i,j,k,t;
printf("Input 10 numbers:\n");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
printf("\n");
for(i=0;i<9;i++) /*问题主要就在这里了*/
{ k=i;
for(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;}
}
printf("The sorted numbers:\n");
for(i=0;i<10;i++)
printf("%3d ",a[i]);
}