链表创建

   链表的创建需要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;
}
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值