求大神来找错 此程序不能运行 (线性表顺序储存)
#include <stdio.h>#define MAXSIZE 100
typedef int ElemType;
typedef struct
{
ElemType elem[MAXSIZE];
int last;
}SeqList;
int Locate(SeqList L,ElemType e);
int PriList(SeqList L);
int LnsList(SeqList *L,int i,ElemType e);
int main()
{
SeqList L1;
L1.elem[0]=5;
L1.elem[1]=6;
L1.elem[2]=9;
L1.last=2;
int i=2;
ElemType j=6;
L1=LnsList(&L1,i,j);
PriList(L1);
return 0;
}
int Locate(SeqList L,ElemType e)
{
int i=0;
while(i<=L.last&&L.elem[i]!=e)
i++;
if(i<=L.last)
return (i+1);
else
return (-1);
}
int PriList(SeqList L)
{
int i;
for(i=0;i<=L.last;i++)
printf("%d",L.elem[i]);
}
SeqList LnsList(SeqList *L,int i,ElemType e)
{
int k;
if(i<1&&i>L->last+2)
{
printf("输入错误");
return(ERROR);//atantion
}
if(L->last=MAXSIZE-1)
{
printf("表已满");
return(ERROR);
}
for(k=L->last;k>=i-1;k--)
L->elem[k+1]=L->elem[k];
L->elem[i-1]=e;
L->last++;
return L;
}
SeqList DelList(SeqList *L,int i,ElemType *e)
{
int k;
if(i<1&&i>L->last+1)
{
printf("删除位置错误");
return(ERROR);
}
for(k=i-1;k<=L->last+1;k++)
L->elem[k]=L->elem[k+1];
*e=L->elem[i-1];
return L;
}