int delete(pList p,int num)
{
peop q=p->head,tmp=p->head;
int i=0;
while(p->size!=0)
{
q=tmp;
while(q!=NULL)
{
i++;
if (i!=num)
q=q->next;
else
{
i=0;
printf("%d\n",q->data);
tmp=q->next;
q->ptr->next=q->next;
q->next->ptr=q->ptr;
// q->next=NULL;
// q->ptr=NULL;
// free(q);
p->size--;
break;
}
}
}
return 1;
}
#include "head.h"
void Initialize(pList p)
{
p->head=NULL;
p->size=0;
p->tail=p->head;
}
int CreatList2(pList p)
{
peop q;
puts("请输入id (!0)data");
while(1)
{
if( p->size==0)
{
peop pep=(peop)malloc(sizeof(ele));
pep->next=NULL;
pep->ptr=NULL;
scanf("%d%d",&pep->id,&pep->data);
if(pep->id==0)
{ free(pep);
break;
}
p->head=pep;
p->tail=pep;
pep->next=pep;
pep->ptr=pep;
q=p->head;
p->size++;
}
else
{
peop pep=(peop)malloc(sizeof(ele));
pep->next=NULL;
scanf("%d%d",&pep->id,&pep->data);
if(pep->id==0)
{ free(pep);
break;
}
q->next =pep;
pep->ptr=q;
q=q->next;
p->tail=q;
q->next=p->head;
p->head->ptr=q;
p->size++;
}
puts("请输入id (!0)data");
}
return p->size;
}
void print(pList p)
{
peop q;
q=p->head;
while (q!=NULL)
{
printf("%d\t%d\t\n",q->id,q->data);
q=q->next;
}
}