程序中已构成如下不带头节点的单向链表结构,指针变量s、p、q均已正确定义,并用于指向链表节点,指针变量s总是作为指针指向链表的第一个节点。 若有以下程序段: q=s; s=s->next: p=s; while(p->next)p=p->next; p-

admin2017-12-13  25

问题 程序中已构成如下不带头节点的单向链表结构,指针变量s、p、q均已正确定义,并用于指向链表节点,指针变量s总是作为指针指向链表的第一个节点。

若有以下程序段:
q=s;
s=s->next:
p=s;
while(p->next)p=p->next;
p->next=q;
q->next=NULL;
该程序段实现的功能是(    )。

选项 A、删除尾节点
B、尾节点成为首节点
C、删除首节点
D、首节点成为尾节点

答案D

解析 本题考查链表的操作。本题中首先是s指向了它的下个节点,题目中说明了s总是指向链表的第一个节点。然后while循环找到链表的最后一个元素,最后一个元素指向了之前链表的头节点,之前头节点指向了空节点,所以本题实现的效果是使首节点成为尾节点,选项D正确。
转载请注明原文地址:https://jikaoti.com/ti/cqa0FFFM
0

最新回复(0)