main()
{
int i,j,p,q,s,n,a[11]={127,3,6,28,54,68,87,105,162,18};初始化数组,变量。
for(i=0;i<10;i++)循环数组中的元素
{ p=i;q=a[i]; 数据定义为P,下标为q;
for(j=i+1;j<10;j++)循环数据j。
if(q<a[j]) {p=j;q=a[j];}下标比较如果q<a[j],则较大的j取代i值的位置。(这句理解的对吗?)
if(p!=i)如果现在p中的值,不再等于i,则下标互换位置。
{
s=a[i];
a[i]=a[p];
a[p]=s;
}
printf("%d ",a[i]);
}
printf("\ninput number:\n");
scanf("%d",&n);这句以下我就不太懂了。如何将所有的数据往后移一位(甚至几位)。
for(i=0;i<10;i++)
if(n>a[i])
{for(s=9;s>=i;s--) a[s+1]=a[s];
break;}
a[i]=n;
for(i=0;i<=10;i++)
printf("%d ",a[i]);
printf("\n");
}