设指针变量p指向单链表中结点A,若删除单链表中结点A,则需要修改指针的操作序列为()。A.q=p->next;p->data=q->data;p->next=q->next;free(q);B.q=p->next;p->data=q->data;free(q);C.q=p->next;p->next=q->next;free(q);D.q=p->next;q->data=p->data;p->next=q->next;free(q);
设指针变量p指向单链表中结点A,若删除单链表中结点A,则需要修改指针的操作序列为()。
A.q=p->next;p->data=q->data;p->next=q->next;free(q);
B.q=p->next;p->data=q->data;free(q);
C.q=p->next;p->next=q->next;free(q);
D.q=p->next;q->data=p->data;p->next=q->next;free(q);
B.q=p->next;p->data=q->data;free(q);
C.q=p->next;p->next=q->next;free(q);
D.q=p->next;q->data=p->data;p->next=q->next;free(q);
参考解析
解析:应先使指针q指向结点A之后的结点,以防链表断裂,然后删除结点q,最后将删除的结点q的存储空间释放。
相关考题:
对于单链表表示法,以下说法正确的是() A指向链表的第一个结点的指针,称为头指针B单链表的每一个结点都被一个指针所指C任何结点只能通过指向它的指针才能引用D尾指针变量具标识单链表的作用,故常用尾指针变量来命名单链表
程序中已构成如下图所示的不带头结点的单向链表结构,指针变量s、P、q、均已正确定义,并用于指向链表结点,指针变量s总是作为头指针指向链表的第一个结点。该程序段实现的功能是( )。A.首结点成为尾结点B.尾结点成为首结点C.删除首结点D.删除尾结点
设指针q指向单链表中结点A,指针p指向单链表中结点A的后继结点B,指针s指向被插入的结点X,则在结点A和结点B插入结点X的操作序列为()。A.p->next=s;s->next=q;B.q->next=s;s->next=p;C.p->next=s->next;s->next=p;D.s->next=p->next;p->next=-s;
在单链表中,指针p指向结点A,若要删除A之后的结点(存在),则指针的操作方式为()。A.p—>next=p—>next—>nextB.p=p—>nextC.p=p—>next—>nextD.p->next-p
设单链表中指针p指着结点a,若要删除a之后的结点(若存在),则需要修改指针的操作为()A、p-next=p-next-nextB、p=p-nextC、p= p-next-nextD、p-next=p
设单链表中指针p指向结点m,若要删除m之后的结点(若存在),则需修改指针的操作为()A、p-next=p-next-next; B、p=p-next; C、p=p-next-next; D、p-next=p;
设单链表中指针p指向结点a,若要删除p之后的结点(若存在),则需修改指针的操作为()。A、p->next=p->next->nextB、p=p->nextC、p=p->next->nextD、next=p
单选题设单链表中指针p指着结点a,若要删除a之后的结点(若存在),则需要修改指针的操作为()Ap-next=p-next-nextBp=p-nextCp= p-next-nextDp-next=p
单选题设指针变量p指向单链表中结点A,若删除单链表中结点A,则需要修改指针的操作序列为( )。Aq=p-next;p-data=q-data;p-next=q-next;free(q);Bq=p-next;q-data=p-data;p-next=q-next;free(q);Cq=p-next;p-next=q-next;free(q);Dq=p-next;p-data=q-data;free(q);
单选题设单链表中指针p指向结点m,若要删除m之后的结点(若存在),则需修改指针的操作为()Ap-next=p-next-next; Bp=p-next; Cp=p-next-next; Dp-next=p;
单选题设单链表中指针p指向结点a,若要删除p之后的结点(若存在),则需修改指针的操作为()。Ap->next=p->next->nextBp=p->nextCp=p->next->nextDnext=p
填空题设指针变量p指向单链表中某结点A,则删除结点A的后继结点需要的操作为()(不考虑存储空间的释放)。