有以下结构体说明和变量定义,如下图所示,指针p、 q、r分别指向一个链表中的三个连续结点。 struct node int data; struct node *next; )*p,*q,*r; data next data next data next 现要将q和r所指结点的先后位置交换,同时要保持链表的连续,以下错误的程序段是()。
A.r→next=q;q→next=r→next;p →next;r;
B.q→next=r→next;p→next=r;r→next=q;
C.p→next=r;q→next=r→next;r→next=q;
D.q→next=r→next;r→next=q;p→next=r;