#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;
}
原文:https://www.cnblogs.com/ljxn/p/10713290.html