程序运行出来为什么会是这样?

编译器没有显示错误,但是运行出来却是这样,请问是哪里出错了啊

img

img

img

if(a[j]<a[j+1])是啥意思呢?

for(i=0;i<n-1;i++)
for(j=0;j<n-i-1;j++)
{
    if(strcmp(a[j],a[j+1]) < 0)
    {
        //交换数据
    }
}
for(i=n-1;i>=n-k;i--)  //这里是i--,不是i++啊
...

最后一个循环,i--写成i++了,标准死循环导致越界