6-5 用头插法创建单链表
作者 朱晓龙
单位 西安邮电大学
Creat_LinkList()函数是使用头插法建立一个带头节点的单链表。函数须返回单链表的头指针,空链表须返回NULL。
函数接口定义:
LinkList Creat_LinkList();
LinkList是函数返回的头指针类型。
裁判测试程序样例:
#define FLAG -1
#include <stdio.h>
#include <malloc.h>
typedef int datatype;
typedef struct node
{
datatype data;
struct node *next;
}LNode, *LinkList;
LinkList Creat_LinkList();
void Print_LinkList(LinkList L);/*这里忽略函数实现部分 */
int main()
{
LinkList L;
L = Creat_LinkList();
if(L == NULL)
{
printf("L=NULL,error!");
return 0;
}
Print_LinkList( L );
return 0;
}
/* 请在这里填写答案 */
输入样例:
在这里给出一组输入。例如:
1 2 3 4 5 -1
输出样例:
在这里给出相应的输出。例如:
5 4 3 2 1
接口函数实现:
LinkList Creat_LinkList()
{
LinkList head = (LinkList)malloc(sizeof(LNode));
head->next = NULL;
int x;
while (scanf("%d", &x) != EOF) {
if (x == FLAG) {
break;
}
LinkList node = (LinkList)malloc(sizeof(LNode));
node->data = x;
node->next = head->next;
head->next = node;
}
return head;
}