大一小白 最近在学数据结构 想问下为什么我的函数CreateList没有办法将输入的数字赋值到双链表中去 包括单链表的CreateList也没有办法实现
#include<stdio.h>
#include<malloc.h>
typedef struct DNode
{
int data;
struct DNode *prior;
struct DNode *next;
}DLinkNode;
void InitList(DLinkNode &L){
L=(DLinkNode)malloc(sizeof(DLinkNode));
L->next=L->prior=NULL;
}
bool CreateList(DLinkNode *&L,int a[],int n){
DLinkNode s;
int i;
for(i=0;i<n;i++)
{
s=(DLinkNode)malloc(sizeof(DLinkNode));
s->data=a[i];
s->next=L->next;
L->next->prior=s;
L->next=s;
s->prior=L;
}
}
void DispList(DLinkNode *L){
DLinkNode *s=L;
printf(“输出双链表:”);
while(s!=NULL)
{
printf("%d “,s->data);
s=s->next;
}
printf(”\n");
}
int main(){
DLinkNode *L;
int n,i;
scanf("%d",&n);
int a[n];
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
}
InitList(L);
CreateList(L,a,n);
DispList(L);
return 0;
}
运行截图:
双链表中链表的建立
最新推荐文章于 2024-09-06 14:55:54 发布