1. 程式人生 > >雙向鏈表的創建和輸出

雙向鏈表的創建和輸出

鏈表 輸入 數據 head tel 節點 序號 clu alloc

#include <stdio.h>

#include <stdlib.h>

typedef struct aa{

int data;

struct aa *rlink;

struct aa *llink;

}DLink;

DLink * createLink(DLink *head){//頭節點

DLink *p,*q;

int n;

head=p=(DLink *)malloc(sizeof(DLink));

head->rlink=NULL;

scanf("%d",&n);

while(n!=-1){//以輸入-1作為輸入數據的結束

q=(DLink *)malloc(sizeof(DLink));

p->llink=q;

q->rlink=p;

p=p->llink;

p->data=n;

scanf("%d",&n);

}

return head;

}

void printLink(DLink *p){

while(p!=NULL){

printf("%d",p->data);

p=p->llink;

}

}

int main(){ int i,j,n;//i是要插入的序號,n是要插入的數據,j是要刪除的序號 DLink *L; printf("請輸入雙向鏈表的數據,輸入-1結束結束輸入數據:"); L=createLink(L);//創建鏈表 printLink(L->llink);//輸出鏈表

return 0;

}

雙向鏈表的創建和輸出