老司机是什么意思啊:谁能说明一下c语言的题5

来源:百度文库 编辑:神马品牌网 时间:2024/05/05 19:29:04
(25)现有以下结构体说明和变量定义.如图所示,指针p、q、r分别指向一个链表中连
续的三个结点。
struct node
{char data;
struct node *next;
}*p,*q,*r;
data next data next data 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)
struct node //定义结构体
{char data;
struct node *next; //指向自身的指针
}*p,*q,*r; //定义三个struct node类型的指针
//后面的应该就是示意图了吧
data next data next data next
…———→[]————→[]————→[]————→……
↑p ↑q ↑r