讲X插入到顺序表VA中,我不知道问题出在哪,高手进来看下,我初学者
# include<stdio.h># include<malloc.h>
#define OK 1
#define error 0
typedef int ElemType;
typedef struct{
ElemType *elem;
int length;
int listsize;
}SqList;
int creat_scanflist(SqList *L,ElemType Length)
{
ElemType i;
L->elem=(ElemType*)malloc(Length*sizeof(ElemType));
if(!L->elem) return error;
printf("请输入顺序表VA的数据元素:");
for(i=1;i<=Length;i++){
scanf("%d",&L->elem[i]);
}
L->listsize=Length+1;
return OK;
}
int insertlist(SqList *L,ElemType e)
{
ElemType i,j,record;
L->elem = (ElemType*)realloc(L->elem,L->listsize*sizeof(ElemType));
if(!L->elem) return error;
for(i=1;i<=L->listsize-1;i++){
if(e>=L->elem[i]&&e<=L->elem[i+1]){
record=i;
for(j=L->listsize-1;j>=i;j--){
L->elem[j+1]=L->elem[j];
}
L->elem[record+1]=e;
}
}
return OK;
}
void printflist(SqList L)
{
ElemType i;
for(i=1;i<L.listsize+1;i++){
printf("%d ",L.elem[i]);
}
printf("\n");
}
int main()
{
SqList VA;
ElemType x;
printf("请输入顺序表VA的元素个数:");
scanf("%d",&VA.length);
creat_scanflist(&VA,VA.length);
printf("请输入要插入顺序表VA的数据元素x:");
scanf("%d",&x);
insertlist(&VA,x);
printf("插入元素x后的顺序表VA为:");
printflist(VA);
return 0;
}