//节点的数据结构
typedef struct node{
int data;
node *next;
}LinkList;
//逆序生成链表L:L为头节点,n为链表长度
void CreatList(LinkList *L,int n)
{
LinkList *p;
L=(LinkList *)malloc(sizeof(LinkList));
L->next =NULL;
for(int i=n;i>0;i--){
p=(LinkList *)malloc(sizeof(LinkList));
if(!p)
exit(0);
scanf("%d",&p->data);
p->next =L->next ;
L->next =p; //带头节点,头节点L不动,next指针动
//若不带头节点,可换作L=p;
}
}