C 语言实例9——双链表的创建及测试打印

// 双链表的创建,返回头指针
Node *CreatList(int n)
{
    Node *head,*pNode,*sNode;
    int i;
    head=(Node *)malloc(sizeof(Node));
	head->bwd=NULL;
	head->fwd=NULL;
    pNode=head;
    for(i=1;i<=n;i++)
    {
        sNode=(Node *)malloc(sizeof(Node));
		sNode->value=i;
		sNode->bwd = NULL;
		sNode->fwd = NULL;

		pNode->fwd=sNode;
		sNode->bwd=pNode;
        pNode=sNode;
    }
    return(head);
}

// 打印双链表数据(传递双向链表头head)
void print_link(Node *head)
{
	Node *pNode=head->fwd;
    while(pNode!=NULL)
    {
		printf("%d\n",pNode->value);
		pNode=pNode->fwd;
    } 
}

猜你喜欢

转载自blog.csdn.net/qq_27762895/article/details/83243655