
1 #include<stdio.h> 2 #include<stdlib.h> 3 typedef struct Node{ 4 char data; 5 Node*next; 6 }Node,*LinkList; 7 IniteLinkList(LinkList*L) 8 { 9 *L=(LinkList)malloc(sizeof(Node)); 10 (*L)->next=NULL; 11 } 12 CreateLinkList(LinkList L) 13 { 14 char e,b='T';//b的作用是吞掉空格与回车,并控制循环 15 Node*q=L,*t; 16 while(b!='\n') 17 { 18 e=getchar(); 19 b=getchar(); 20 t=(LinkList)malloc(sizeof(Node)); 21 t->data=e; 22 t->next=q->next; 23 q->next=t; 24 q=t; 25 } 26 } 27 int LengthLinkList(LinkList L) 28 { 29 Node*t; 30 int num=0; 31 for(t=L->next;t;t=t->next)num++; 32 return num; 33 } 34 int main() 35 { 36 LinkList L; 37 IniteLinkList(&L); 38 CreateLinkList(L); 39 printf("%d",LengthLinkList(L)); 40 return 0; 41 42 }