#include <stdio.h>
#include <malloc.h>
#define ElemType int
typedef struct Node
{
ElemType Data;
struct Node * Next;
}LNode,*LinkList;
LinkList CreatLNode_Head_Insert() // 头插法建立链表
{
LinkList Head;
Head=(LinkList)malloc(sizeof(LNode));
LNode * S;
ElemType Elem;
Head->Next=NULL;
printf("请输入一个数,以0终止输入\n");
scanf("%d",&Elem);
while(Elem!=0)
{
S=(LinkList)malloc(sizeof(LNode));
S->Data=Elem;
S->Next=Head->Next;
Head->Next=S;
scanf("%d",&Elem);
}
return Head;
}
void Print (LinkList Head)
{
LinkList p;
p=Head;
while(p->Next!=NULL)
{
p=p->Next;
printf("%d ",p->Data);
}
}
int Destroy_LinkList(LinkList Head)
{
LinkList p,q;
p=Head;
q=p->Next;
while(q->Next!=NULL)
{
free(p);
p=q;
q=q->Next;
}
free(p);
free(q);
return 0;
}
int main(void)
{
LinkList head;
head=CreatLNode_Head_Insert();
Print(head);
Destroy_LinkList(head);
return 0;
}

2949

被折叠的 条评论
为什么被折叠?



