代码示例:
//尾插法
/*将每次插入的新节点放在链表的尾部*/
#include<stdio.h>
#include<stdlib.h>
#define N 10
struct Data
{
int num;
struct Data *next;
};
struct Data*insert()
{
int data,i;
struct Data*head,*r,*s;
head=(struct Data*)malloc(sizeof(struct Data));
head->next=NULL;
r=head;
for(i=0;i<N;i++)
{
s=(struct Data*)malloc(sizeof(struct Data));
s->num=i;
s->next=r->next;
r-next=s;
r=s;
}
printf("the list is:");
s=head->next;
while(s!=NULL)
{
printf("%d\t",s->num);
s=s->next;
}
printf("\n");
return head;
}
int main(int argc,char*argv[])
{
struct Data*head,*p;
head=insert();
printf("the list is:\n");
p=head->next;
while(p!=NULL)
{
printf("%d\t",p->num);
p=p->next;
}
printf("\n");
return 0;
}