问题 单项选择题

现有以下结构体说明和变量定义,如图所示,指针p、q、r分别指向一个链表中连续的三个节点。
struct node
char data;
struct node*next;*p,*q,*r;


现要将q和r所指节点交换前后位置,同时要保持链表的连续,以下不能完成此操作的语句是______。

A) q->next=r->next;p->next=r;r->next=q;
B) p->next=r;q->next=r->next;r->next=q;
C) q->next=r->next;r->next=q;p->next=r;
D) r->next=q;p->next=r;q->next=r->next;

答案

参考答案:D

解析: D中的操作将会丢失r后面的链表结构,不能保持链表的连续。

判断题
单项选择题