链表的创建需要2个指针,这对指针cp相爱携手往前走,我们分别称其为p1,p2,这对cp里面,p1是主心骨,负责开疆拓土,p2是成功男人背后的女人,负责保存胜利果实
struct
Node * create(
int
n)
{
struct
Node *p1,*p2,*head;
int
i=0;
for
(;i<n;i++)
{
if
(i==0)//如果是第一个指针,就要特殊处理头指针
{
p1=(
struct
Node *)
malloc
(LEN);//开辟存储空间
scanf
(
"%d %s %d"
,&p1->num,&p1->name,&p1->old);//输入数据
head=p1;//把p1赋值给head
p2=p1;//用p2保存p1,以便下次新开拓的p1能够放到p2->next里
}
else
{
p1=(
struct
Node *)
malloc
(LEN);
scanf
(
"%d %s %d"
,&p1->num,&p1->name,&p1->old);
p2->next=p1;//把p1的值放到p2的next里,这样就把链表连起来了噢!
p2=p1;//继续保存p1的地址
}
}
return
head;
}