链表头插

来源:互联网 发布:央视直播网络电视 编辑:程序博客网 时间:2024/05/16 04:48
  1. #include <stdio.h>  
  2. #include <stdlib.h>  
  3.   
  4. struct node  //定义结点的结构  
  5. {  
  6.     int num;  //数据域  
  7.     struct node * next;//指针域  
  8. };  
  9.   
  10. typedef struct node Node;//给结构体命名为Node  
  11. typedef struct node * link;//给指向结构体的指针命名为link  
  12.   
  13. void create_link(link * head)  
  14. {  
  15.     *head = NULL;  
  16. }  
  17.   
  18. void insert_code(link * head,link new_code)  
  19. {  
  20.     new_code->next = * head;  
  21.     * head = new_code;  
  22. }  
  23.   
  24. void display_node(link head)  
  25. {  
  26.     link tmp;  
  27.     tmp = head;  
  28.     while(tmp != NULL)  
  29.     {  
  30.         printf("num = %d\n",tmp->num);  
  31.         tmp = tmp->next;  
  32.     }  
  33. }  
  34.   
  35. int main()  
  36. {  
  37.     link head = NULL; //定义头指针  
  38.     link new_code = NULL;//定义一个新的结点  
  39.     int i;  
  40.   
  41.     create_link(&head);  
  42.       
  43.     for(i = 0;i <= 9;i++)  
  44.     {  
  45.         new_code = (link)malloc(sizeof(Node));  
  46.         if(new_code == NULL)  
  47.         {  
  48.             printf("malloc error!\n");  
  49.             exit(-1);  
  50.         }  
  51.         new_code->num = i;  
  52.   
  53.         insert_code(&head,new_code);  
  54.     }  
  55.   
  56.     display_node(head);  
  57.   
  58.     return 0;  
  59. }  
0 0
原创粉丝点击