[单选题]

假定建立了以下链表结构,指针p、q分别指向如图所示的结点,则以下可以将q所指结点从链表中删除并释放该结点的语句组是 ( )

A.free(q);p->Next=q->next;

B.(* p).next=(* q).nexy;free(q);

C.q=(* q).next;(* p).next=q;free(q);

D.q=q->next;p->next=q;p=p->next;free(p);

参考答案与解析:

相关试题

假定已建立以下链表结构,且指针p和q已指向如图所示的结点:则以下选项中司将q所指

[单选题]假定已建立以下链表结构,且指针p和q已指向如图所示的结点:则以下选项中司将q所指结点从链表中删除并释放该结点的语句组是______。A.(*p).next=(*q).next; free(p);B.p=q->next; free(q);C.p=q; free(q);D.p->next=q->next; free(q);

  • 查看答案
  • 假定已建立以下链表结构,且指针P和q已指向如图所示的结点: 则以下选项中可将q所

    [单选题]假定已建立以下链表结构,且指针P和q已指向如图所示的结点:则以下选项中可将q所指结点从链表中删除并释放该结点的语句组是( )。A.p一>next=q一>next;flee(q);B.p=q一>next;free(q);C.p=q;free(q);D.(*p).next=(幸q).next;ffee(p);

  • 查看答案
  • 设单链表中结点的结构为(data,link)。已知指针q所指结点是指针p所指结点

    [单选题]设单链表中结点的结构为(data,link)。已知指针q所指结点是指针p所指结点的直接前驱,若在*q与*p之间插入结点*s,则应执行下列哪一个操作?A.s↑.link:=p↑.link;p↑.link:=sB.q↑.link:=s;s↑.link:=pC.p↑.link:=s↑.link;s↑.link:=pD.p↑.link:=s;s↑.link:=q

  • 查看答案
  • 设单链表中结点的结构为(dara,link)。已知指针q所指结点是指针p所指结点

    [单选题]设单链表中结点的结构为(dara,link)。已知指针q所指结点是指针p所指结点的直接前驱,若在*q与*p之间插入结点*s,则应执行下列哪一个操作?A.s↑.link:=p↑.link;p↑.link:=sB.q↑.link:=s;s↑.link:=pC.p↑.link:=s↑.link;s↑.link:=pD.p↑.link:=s;s↑.link:=q

  • 查看答案
  • 设单链表的结点结构为(data,next)。已知指针p指向单链表中的结点,q指向

    [填空题] 设单链表的结点结构为(data,next)。已知指针p指向单链表中的结点,q指向新结点,欲将q插入到p结点之后,则需要执行的语句:();()。

  • 查看答案
  • 现有以下结构体说明和变量定义,如图所示,指针p、q、r分别指向—个链表中连续的三

    [单选题]现有以下结构体说明和变量定义,如图所示,指针p、q、r分别指向—个链表中连续的三个结点。 street 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->n

  • 查看答案
  • 在双向循环链表中,在p指针所指的结点后插入一个指针q所指向的新结点,修改指针的操

    [单选题]在双向循环链表中,在p指针所指的结点后插入一个指针q所指向的新结点,修改指针的操作是()。A . p->next=q;q->prior=p;p->next->prior=q;q->next=q;B . p->next=q;p->next->prior=q;q->prior=p;q->next=p->next;C . q->prior=p;q->next=p->next;p->next->prior=q

  • 查看答案
  • 若已建立下面的链表结构,指针p、s分别指向图中所示的结点,则不能将s所指的结点插

    [单选题]若已建立下面的链表结构,指针p、s分别指向图中所示的结点,则不能将s所指的结点插入到链表末尾的语句组是 ( )A.s->next=NULL;p=p->next;p->next=s;B.p=p->next;s->next=p->next;p->next=s;C.p=p->next;s-next=p;p->next=s;D.p=(*p).next;(* s).next=(* p).next;(* p).next=s;

  • 查看答案
  • 有以下结构体说明和变量定义,如图所示,指针p、q、r,分别指向此链表中的3个连续

    [单选题]有以下结构体说明和变量定义,如图所示,指针p、q、r,分别指向此链表中的3个连续结点。 Struct node { int data; Struct node *hext; } *p,*q,*r;现要将Q所指结点从链表中删除,同时要保持链表的连续,以下不能完成指定操作的语句是A.p->next=q->next;B.p->next=p->next->next;C.p->next=r;D.p=q->next;

  • 查看答案
  • 设指针q指向单链表中结点A,指针p指向单链表中结点A的后继结点B,指针s指向被插入的结点X,则在结点A和结点B插入结点X的操作序列为()。

    [单选题]设指针q指向单链表中结点A,指针p指向单链表中结点A的后继结点B,指针s指向被插入的结点X,则在结点A和结点B插入结点X的操作序列为()。A.p->n

  • 查看答案
  • 假定建立了以下链表结构,指针p、q分别指向如图所示的结点,则以下可以将q所指结点