#include<stdio.h>
#include <stdlib.h>
typedef struct LNode{
int data;
struct LNode *next;
}LNode, * LinkList;
int initlist(LinkList L)
{
L=(LinkList)malloc(sizeof(LNode));
L->next=NULL;
}
int creatlist(LinkList L,int n)
{
int j;
LinkList p;
for(j=n;j>0;j--)
{
p=(LinkList)malloc(sizeof(LNode));
scanf("%d",&p->data);
L->next=p;
p->next=NULL;
L=L->next;
}
return 1;
}
void printlist(LinkList L)
{
LinkList t=L->next;
while(t!=NULL)
{
printf("%d ",t->data);
t=t->next;
}
printf("NULL\n");
}
int getelem(LinkList L,int i,int *e)
{
int j;
LinkList s=L;
for(j=0;j<i;j++)
{
s=s->next;
}
if(s==NULL) return 0;
*e=s->data;
printf("%d ",*e);
return 1;
}
int insertelem(LinkList L,int i,int e)
{
LinkList p=L->next;
LinkList q;
int j;
while(p!=NULL&&j<i-1)
{
p=p->next;
j++;
}
q=(LinkList)malloc(sizeof(LNode));
q->data=e;
q->next=p->next;
p->next=q;
printf("%d ",q->data);
}
int deletelem(LinkList L,int i,int *e)
{
int j;
LinkList p=L->next;
LinkList q;
while(p!=NULL&&j<i-1)
{
p=p->next;
j++;
}
q=p->next;
*e=q->data;
p->next=q->next;
return 1;
}
int main()
{
LinkList L;
int n,e,t;
initlist(L);
scanf("%d",&n);
creatlist(L,n);
getelem(L,1,&e);
printlist(L);
insertelem(L,2,10);
printlist(L);
deletelem(L,3,&t);
printlist(L);
return 0;
}
问题:程序只能输入但其他功能运行不了