main()
{
int i,j,p,q,a[11]={127,3,6,28,54,68,87,105,162,18};
for(i=0;i<10;i++)//从头开始
{
p=i;
q=a[ i];
//q用来保存当前循环中的最大值,刚开始当然就是本身大了
//p用来保存当前最大值的位置
for(j=i+1;j<10;j++)//把第i个元素跟它后面的对比
if(q<a[j]) //如果在后面发现比当前最大值
{
p=j;//保存新的最大值所在的位置
q=a[j];//q里保存的是新的最大值
}
if(p!=i)
{
a[p]=a[ i];
a[ i]=q;
}
printf("%d ",a[ i]);
}
}
这样就省了一个s变量,n变量好像从头到尾都没用上!
汗!a[ i]不加空格它会当成斜体的标记显示不出来