void insertsort(float A[], int j, int length)
{
int i;
float key;
for (; j<length; j++)
{
key = A[j];
i = j - 1;
while ((i>=0) && (A[i]>key))
{
A[i+1] = A[i];
i--;
}
A[i+1] = key;
}
}
一开始的时候漏写了while里面的那个"="号,导致,第一个数字不会被排序,我还一度怀疑是读写文件那个程序出错了,真是冤枉它了。
出现此错误的原因应该是对算法理解得不够透彻。
若是i>0,则当j=1时,i=0,则第一个数字不会被比较,故,应该为>=0才可。