#include <stdio.h>
#include<stdlib.h>
#include <time.h>
#define MAXSIZE 20
typedef int KeyType;
typedef int InfoType;
typedef struct{
KeyType key;
InfoType otherinfo;
}RedType;
typedef struct{
RedType r[MAXSIZE+1];
int length;
}SqList;
int LT(int x,int y){
if(x<y)
return 1;
else
return 0;
}
void InsertSort(SqList &L)
{
for(int i=2;i<=L.length;i++)
if(LT(L.r[i].key,L.r[i-1].key))
{
L.r[0]=L.r[i];
L.r[i]=L.r[i-1];
int j=i-2;
for(;LT(L.r[0].key,L.r[j].key);j--)
L.r[j+1]=L.r[j];
L.r[j+1]=L.r[0];
}
}
int main()
{ SqList L;
L.length=10;
for(int x=0;x<10;x++)
{
scanf("%d",&L.r[x].key);
}
InsertSort(L);
for(int j=0;j<=L.length;j++)
{
printf("%d\t",L.r[j].key);
}
return 0;
}
运行结果总是不正确 帮忙看看是什么问题