雙向鏈表的創建和輸出


#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;

}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM