我的代码要怎么改呀
#include<stdio.h>
#define MAXSIZE 100
#define OK 1
#define ERROR 0
#define OVERFLOW -2
typedef int Status;
typedef int ElemType;
typedef struct
{
ElemType *elem;
int length;
} SqList;
int CreateList(SqList *L,int n)
{
int i=0;
for(i=0;i<n;i++)
{
scanf("%d",&L->elem[i]);
}
L->length=n;
return OK;
}
Status ListDelete(SqList *L,int item)
{
int i,j;
for(i=0;i<L->length;i++)
{
if(L->elem[i]==item)
{
for(j=i;j<L->length;j++)
{
L->elem[j]=L->elem[j+1];
}
L->length--;
}
}
return OK;
}
int main()
{
int i=0,item,n;
scanf("%d",&n);
SqList L;
CreateList(&L,n);
scanf("%d",&item);
ListDelete(&L,item);
for(i=0;i<L.length;i++)
{
printf("%d",&L.elem[i]);
}
return 0;
}
将不符合条件的数据存储到数组从0开始的位置
Status ListDelete(SqList *L,int item)
{
int i,n=0;
for(i=0;i<L->length;i++)
{
if(L->elem[i] != item)
L->elem[n++] = L->elem[i];
}
L->length = n;
return OK;
}