这样为什么没法进行折半排序
int main(int argc, const char *argv[]){
int a[10]={10,25,36,69,78,95,45,34,24,16};
int i,j,k,n;
int m=0;
int num;
for(k=1;k<10;k++)
{
num=a[k];
i=0;
j=k-1;
printf("num:%d\n",num);
while(i<j)
{
m=(i+j)/2;
if(num>a[m])i=m+1;
else if(num<a[m])j=m-1;
}
printf("i:%d\nj:%d\n",i,j);
for(n=k;n>j;n--)
a[n]=a[n-1];
a[j+1]=num;
}
for(i=0;i<10;i++)
printf("%4d",a[i]);
printf("\n");