#include#include typedef struct LNode{ int data; struct LNode*next; }LNode; //尾插法建立链表 void ListTailInsertAndprint(LNode*l){ int x; //l=(LNode*)malloc(sizeof(LNode));//建立一个头结点,但并未赋值为NULL LNode*s,*r=l; //*s为空指针,*r指向l scanf("%d",&x); while(x!=9999){ //数字是随机的 s=(LNode*)malloc(sizeof(LNode)); //申请新空间 s->data=x; // r->next=s; //把头结点的next指向第二个结点的data r=s; //把r指向第二个结点 scanf("%d",&x); } r->next=NULL; LNode*cur=l; while(cur!=NULL){ printf("%d->",cur->data); cur=cur->next; } printf("NULL"); } int main(){ LNode l; ListTailInsertAndprint(&l); return 0; }



