#include<stdio.h>
#include<stdlib.h>
struct Node
{
int data ;
struct Node *next ;
};
//定义并构造创造单链表的函数
Node CreatLink(Node *head)
{
Node *r,*s ;
head =(Node *)malloc(sizeof(Node));
head->next = NULL ;
r = head ;
int a,n = 0,c ;
printf("在下方输入链表中数据个数\n");
scanf("%d",&a);
printf("在下方输入该链表中的数据\n") ;
while(n<a)
{
s =(Node *)malloc(sizeof(Node));
scanf("%d",&c) ;
s->data = c ;
r->next =s;
r = s ;
printf(" ") ;
n++ ;
}
r->next= NULL ;
printf("\n") ;
printf("创建链表成功!\n");
return *head;
}
//定义并构造能够打印单链表中数据的函数
void PrintLink(Node *head)
{
Node *p ;
p = head->next;
if (p == NULL)
{
printf("The Link is NULL!") ;
}
else
while(p!=NULL)
{
printf("%d ",p->data);
p = p->next ;
}
}
int main()
{
struct Node *H = NULL ;
printf("在下方创建链表\n");
CreatLink(H); //创造单链表
printf("在下方输出链表\n");
PrintLink(H); //输出单链表中数据
return 0 ;
}