数据结构之简单链表(尾部插入数据)

#include
#include    
#include    
typedef struct node  
{  
    char key[255];  
    struct node *Next;  
}Node;  
void Insert(char *string,Node *head)  
{  
    Node *L = NULL;  
    Node *p = NULL;  
    L = head;  
    while (L->Next != NULL)  
    {  
        L = L->Next;//遍历找到尾节点   
    }  
    p = (Node *) malloc (sizeof(Node));//开辟新的节点   
    strcpy(p->key,string);//赋值   
    p->Next = NULL;//设置为尾节点   
    L->Next = p;//挂在原来尾节点之后   
  
}  
void Print_List(Node *head)  
{  
    Node *p = head->Next;  
    while(p != NULL)//遍历打印节点值   
    {  
        printf("%s->", p->key);  
        p = p->Next;  
    }  
    printf("\n");  
}  

void createLinkListTail_temp( Node *list,char *string,int n)
{
if(n==0)
return ;
else{
n--;
Insert(string,list);
createLinkListTail_temp(list,string,n);
}
} 

int main()  
{      
int i=3;
    Node *head = (Node *)malloc(sizeof(Node));  
    head->Next = NULL;//建立空表头  
    createLinkListTail_temp(head,"hello",i);  
    createLinkListTail_temp( head,"3",i);  
    Print_List(head);  
    return 0;  
}

原文地址:http://blog.csdn.net/cfan0801/article/details/7027577


=============================================================================

#include<stdio.h>  
#include<stdlib.h> 
#include <string.h>

typedef struct node {  
  char data[255];  
  struct node *next;  
}LNode,*LinkList; 

void printLinkListContent(LinkList list) {  
  printf("list is:\n");  
     
  while(list) {  
   printf("%s ",list->data);  
   list = list->next;  
  }  
   printf("\n");  
}    

void createLinkListTail(LinkList *list,char *string) {  
  LinkList p,r;  
  p = (LinkList)malloc(sizeof(LNode));  
  strcpy(p->data ,string); 
  p->next = NULL;  
  if((*list)) {
  r->next = p;  
      
    } 
else {  
      (*list) = p;
    }  
    r = p;  

}  

 
 
int main() {  
    
  LinkList list=NULL;

  createLinkListTail(&list,"hello"); 
  createLinkListTail(&list,"world");

  printLinkListContent(list);  
  return 0;  
} 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值