我截取了其中的一段,主要是黑色字体的部分,除了出了点问题(我用的vc6.0)
#include stdio.h
#include malloc.h
#include stdlib.h
typedef struct DuLNode
{
int data;
DuLNode *prior,*next;
}DuLNode,*DuLinkList;
void InitList(DuLinkList
if(L)
L-next=L-prior=L;
else
exit(0);
}
DuLinkList GetElemP(DuLinkList L,int i)
{
int j;
DuLinkList p;
p=L;
// if(i0||iListLength(L))
//return NULL;
for(j=1;j=i;j)
p=p-next;
return p;
}
int ListInsert(DuLinkList
//int j;
// if(i0||iListLength(L) 1)
//return 0;
q=GetElemP(L,i-1);
if(!q)
return 0;
s=(DuLinkList)malloc(sizeof(DuLNode));
if(!s)
return 0;
s-data=e;
s-prior=q;
s-next=q-next;
q-next-prior=s;
q-next=s;
}
void main()
{
DuLinkList L;
int i,n=4;
int e;
InitList(L);
for(i=1;i=5;i)
ListInsert(L,i,i);
}
有请高手请教~~谢谢
|