#include<stdio.h>
#include<malloc.h>
typedef struct LNode //定义单链表结构
{
int data;
struct LNode *next;
}LNode,*LinkList;
LinkList createLinkList_head()//头插法创建链表的函数
{LinkList L,p;
L = (LinkList)malloc(sizeof(LNode));
L->next = NULL;//初始化一个空链表,L为头指针
int x;
scanf("%d",&x);//x是和链表元素具有相同类型的变量
while(x != -1)//flag为结束输入的标志
{
p=(LinkList)malloc(sizeof(LNode));//生成新的结点
p->data=x; //输入元素值
p->next=L->next; L->next=p; //插入到表头
scanf("%d",&x);//读入下一个元素的值
}
return L;
}