#include <stdio.h>
#include <malloc.h>
#include <stdlib.h>
typedef struct node{
int date;//数据域 ;
struct node* next;//指针域;
}NODE,*PNODE;
PNODE creat_list(void){
int len;//用来存放有效节点个数;
int val;//用来存放有效节点的数值;
int i=0;
PNODE phead=(PNODE)malloc(sizeof(NODE));//分配了一个不存放有效数据的头节点;
if(phead==NULL){
printf("分配失败");
exit(-1);
}
PNODE ptail=phead;
ptail->next=NULL;
printf("输入链表节点个数");
scanf("%d",&len);
for(i=0;i<len;i++){
printf("输入第%d个节点的值",i+1);
scanf("%d",&val);
PNODE pNew=(PNODE)malloc(sizeof(NODE));
if(pNew==NULL){
printf("分配失败");
exit(-1);
}
pNew->date=val;
//phead->next=pNew;
//pNew->next=null;
ptail->next=pNew;
pNew->next=NULL;
ptail=pNew;
}
return phead;
}
void traverse_list(PNODE phead){
PNODE p=phead->next;
if(p==NULL) return;
while(p){
printf("%d ",p->date);
p=p->next;
}
}
int main(){
PNODE phead=NULL;
phead=creat_list();//创建一个链表;
traverse_list(phead);//遍历链表;
}