link solve(link & L, int i)
{
link p;
p=L->next;
if(i==0)
p=NULL;
else if(i==(-1))
return L;
else
{
i=i--;
while(p!=NULL&&i!=0)
{
p=p->next;
i=i--;
}
}
return p;
}
没看懂你i=-1返回L是什么意思。还有,这个链表有没有头结点?有头结点的话0应该返回头结点。还有。要i减小1,直接就i--;或者i-=1; i=i--....我真的第一次见这么写的。第四行,p=L才对,你那么写,p就直接指向了第二个节点了。。。
我感觉 i = i--;没意义。直接i--就行。
特别我觉着你这样写会有问题,根本找不出对于i的节点。具体是什么没有全部代码我也说不上。