#include<stdio.h>
#include<stdlib.h>
struct link
{
int data;
struct link *next;
};
struct link *invent(void);
void outp(struct link *head);
int main()
{
struct link *head,*p;
head=invent();
p=head;
outp(p);
return 0;
}
struct link *invent (void)
{
struct link *head=NULL,*tail,*new;
int icount=0;
while(1)
{
printf("请输入第%d个结点:",icount+1);
new=(struct link *)malloc(sizeof(struct link));
scanf("%d",&new->data );
if(new->data ==-1)
{
free(new);
return head;
}
else
{
icount++;
if(icount == 1)
{
head=tail=new;
tail->next =NULL;
}
else
{
new->next=head;
head=new;
}
}
}
}
void outp(struct link *head)
{
struct link *p=head;
while(p)
{
printf("%d\n",p->data);
p=p->next;
}
}