#include<stdio.h>
#include<conio.h>
void main()
{
int a[10],i=0,j,x,n,gap;
printf("希尔排序法,请输入数据,以-1结束/n");
for(i=0;i<10;i++)
{
scanf("%d",a+i);
if(a[i]==-1) break;
}
n=i;
gap=n/2;
while(gap>0)
{
for(i=gap;i<n;i++)
{
j=i-gap;
while(j>=0)
{
if(a[j]>a[j+gap])
{
x=a[j];
a[j]=a[j+gap];
a[j+gap]=x;
j=j-gap;
}
else break;
}
}
gap/=2;
}
for(i=0;i<n;i++)
printf("%d ",a[i]);
getch();
}