码迷,mamicode.com
首页 > 其他好文 > 详细

链表(一)

时间:2017-03-23 01:46:30      阅读:187      评论:0      收藏:0      [点我收藏+]

标签:表头   printf   链表   print   head   计算   div   lib   turn   

1.建立简单的单向链表

 

#include<stdio.h>
#include<stdlib.h>
#define LEN sizeod(struct chain)

struct chain{
     int data;
     struct chain *next;        
}; //分号(;)号千万不要忘记!

int main()
{
     int i=1,j,data;
     struct chain *head=NULL;  //建立头指针并指向空
     struct chain *p1,*p2;
     
     whlie(scanf("%d",&data)&&data!=0)  //输入0时停止创建链表
     {
          if(head==NULL)
          {
                p1=p2=(struct chain*)malloc(LEN);
                p1->data=data;
                head=p1;  //头指针指向链表
          }
          else 
          {    
                p1->data=data;
                p2->next=p1;  //使用p2串起链表
          }
          p2=p1;
          p1=(struct chain*)malloc(LEN);   
          i++; //计算链表中数据个数
     }
     p1=head; //重新指向链表头
     //输出链表内容
     for(j=1;j<i;j++)
     {
          printf("%d ",p1->data);
          p1=p1->next;
     }
     return 0;
}

 

 

2.逆序输出

 

int i,times;

scanf("%d",times); //获取循环次数

for(i=0;i<times;i++)
{
     p1=(struct chain*)malloc(LEN);
     scanf("%d",&p->data);
     //指向头,创建逆序
     p1->next=head;
     head=p1;
}

 

链表(一)

标签:表头   printf   链表   print   head   计算   div   lib   turn   

原文地址:http://www.cnblogs.com/wcx424/p/6602622.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!