创建单向链表之正向建链,首先定义一个结构体ElemSN,创建头指针head,两个中间变量p、q用于连接创建出的每一个节点的指针域。
#include"stdio.h"
#include"conio.h"
#include"malloc.h"
typedef struct ElemSN
{
int data;
struct ElemSN * next;
}ElemSN;
ElemSN * CreatLink(int *a , int n); //创建单向链表
void printLink(ElemSN * head); //输出单向链表
void printLink(ElemSN * head)
{
for(; head ; head=head->next)
printf("%d ", head->data);
}
ElemSN * CreatLink(int *a ,int n)
{
int i;
ElemSN *head=NULL;
ElemSN *p, *q;
for(i = 0 ; i < n ;i++)
{
p=(ElemSN *)malloc(sizeof(ElemSN));
p->data=a[i];
p->next=NULL;
if(head==NULL)
head = p;
else
q->next=p;
q=p;
}
return head;
}
void main(void)
{
ElemSN *head;
int a[8]={1,2,3,4,5,6,7,8};
head = CreatLink(a,8);
printLink(head);
getch();
}
C语言创建单向链表之正向建链
最新推荐文章于 2023-01-11 20:01:26 发布