指针p,q,r依次指向某循环链表中三个相邻的结点,交换结点*q,*r在表中次序的程序段是

[A] p->next=r; q->next=r->next; r->next=q;    
[B] p->next=r; r->next=q; q->next=r->next;    
[C] r->next=q; q->next=r->next; p->next=r;    

[D] r->next=q; p->next=r; q->next=r->next;

从度娘获取的答案是B,仔细分析一下B是错误的。

B项先修改了r->next的指向,这会导致后边的赋值语句q->next也指向q。

正确答案是A。




百度链接:http://zhidao.baidu.com/link?url=m-nHRfzNRRB6FyVsm1vDvLLUX49uD6_xKwXMy3n6mpOeCcef4Ne9wH97oGPDkAN408Py4LXSvWKV99b9h5vaiHx1NLOs-93FTKruvixAFsS



09年数据结构考试答案:http://wapwenku.baidu.com/view/d98524165f0e7cd184253690

你可能感兴趣的:(指针p,q,r依次指向某循环链表中三个相邻的结点,交换结点*q,*r在表中次序的程序段是)