有以下结构体说明和变量的定义,且指针p指向变量a,指针q指向变量b。则不能把结点b连接到结点 a之后的语句是 struct node { char data; struct node*next; }a,b,*p=&a,*q=&b;
A.a.next=q;
B.p.next=&b;
C.p->next=&b;
D.(*p).next=q;
第1题:
单链表的每个结点中包括一个指针link,它指向该结点的后继结点。现要将指针q指向的新结点插入到指针P指向的单链表结点之后,下面的操作序列中正确的是( )
A)q;=p↑.link;p↑.link:=q↑,link;
B)p↑.link.q↑.link;q:=p↑.link;
C)q↑.link::p↑.link;P↑.link:=q;
D)P↑.link:=q;q↑.link:=p↑.link;
第2题:
有以下结构体说明和变量的定义,且指针p指向变量a,指针q指向变量b。则不能把结点b连接到结点a之后的语句是
struct node
{ char data;
struct node *next;
} a,b,*p=&a,*q=&b;
A.a.next=q;
B.p.next=&b;
C.p->next=&b;
D.(*p).next=q;
第3题:
A./*p2是指向浮点变量的指针变量*/
B./*p2是指向整型变量的指针变量*/
C./*p2是指向字符变量的指针变量*/
D./*p2是指向函数变量的指针变量*/
第4题:
若有以下定义: struct link { int data; struct link *next; }a,b,c,*p,*q;且变量a和b之间已有下图所示的链表结构:
指针p指向变量a,指针q指向变量c,则能够把c插入到a和b之间并形成新的链表的语句组是( )。
A.a.next=c;c.next=b;
B.p.next=q;q.next=p.next;
C.p->next=&c;q->next=p->next;
D.(*p).next=q; (*q).next=&b;
第5题:
有以下结构说明和变量定义,指针p、q、r分别指向链表中的3个连续结点。
A.
B.
C.
D.
现要将q所指结点从链表中删除,同时要保持链表的连续,以下不能按要求完成操作的语句是( )。
A.A
B.B
C.C
D.D
第6题:
若有如下定义: int (*p)(), *q(); 则下列说法正确的是( )
A.p是一个函数名,q是一个指针变量
B.p是一个指向整型变量的指针变量,q是一个指向一维数组的指针变量
C.p和q是等价的,都是指针变量
D.p是指向函数的指针变量,函数的返回值是整型数据;q是带回指针值的函数
第7题:
有以下结构体说明和变量的定义,且指针p指向变量a,指针q指向变量b。则不能把结点b连接到结点a之后的语句是( )。 struct node {chardata; struct node if next; }a,b,*p:&a,*q=&b;
A.a.next=q;
B.p.next=&b;
C.p->next=&b:
D.(*p).next=q;
第8题:
单链表的每个结点中包括一个指针link,它指向该结点的后继结点。现要将指针q指向的新结点插入到指针P指向的的单链表结点之后,下面的操作序列中哪一个是正确的?
A.q:=p↑.link; p↑.link:=q↑.link;
B.p↑.link:=q↑.link; q:=p↑.link;
C.q↑.link:=p↑.link;p↑link:=q;
D.p↑.link:=q; q↑.link:=p↑.link;
第9题:
设指针变量p指向单链表中的结点A,则删去结点A的语句序列为 Q=p->next;p->data = p->data: p->next=(); :feee(q);
第10题:
设单链表的结点结构为(data,next)。已知指针p指向单链表中的结点,q指向新结点,欲将q插入到p结点之后,则需要执行的语句:();()。
第11题:
设单链表中指针p 指向结点A,q指针指向其后继结点。若要删除A的后继结点(假设A存在后继结点),则需修改指针的操作为()。
第12题:
第13题:
有以下结构体说明和变量的定义,且指针p指向变量a,指针q指向变量b。则不能把节点b连接到节点a 之后的语句是
struct node
{ char data;
struct node*next;
}a,b,*p= &a,*q=&b;
A.a. next=q;
B.p. next= &b;
C.p->next=&b;
D.(*p).next=q;
第14题:
A指向链表的第一个结点的指针,称为头指针
B单链表的每一个结点都被一个指针所指
C任何结点只能通过指向它的指针才能引用
D尾指针变量具标识单链表的作用,故常用尾指针变量来命名单链表
第15题:
单键表的每个结点中包括一个指针link,它指向该结点的后继结点。现要将指针q指向的新结点插入到指针p指向的单链表结点之后,下面的操作序列中哪一个是正确的?
A.q:=p^.link;p^.link:=q^.link;
B.p^.link:=q^.link;q:=p^.link;
C.q^.link:=p^.link;p^.link:=q;
D.p^.link:=q;q^.link:=p^.link;
第16题:
程序中已构成如下图所示的不带头结点的单向链表结构,指针变量s、P、q、均已正确定义,并用于指向链表结点,指针变量s总是作为头指针指向链表的第一个结点。
该程序段实现的功能是( )。
A.首结点成为尾结点
B.尾结点成为首结点
C.删除首结点
D.删除尾结点
第17题:
有以下结构体说明和变量定义,如图所示,指针p、q、r分别指向此链表中的3个连续结点。struct node { int data;struct node *next;} *p,*q,*r;
现要将q所指结点从链表中删除,同时要保持链表的连续,以下不能完成指定操作的语句是
A.p->next=q->next;
B.p-next=p->next->next;
C.p->next=r;
D.p=q->enxt;
第18题:
有以下结构体说明和变量的定义,且指针p指向变量a,指针q指向变量b,则不能把节点b连接到节点a之后的语句是( )。 struct node { char data; struct node *next; }a,b, *p=&a,*q=&b;
A.a.next=q;
B.p.next=&b;
C.p->next=&b
D.(*p).next=q;
第19题:
有以下结构说明和变量定义,指针p、q、r分别指向链表中的3个连续结点。 struct node { int data;struct node*next;)*p,*q,*r; 现要将q所指结点从链表中删除,同时要保持链表的连续,以下不能按要求完成操作的语句是( )。
A.p->next=q->next;
B.P-next=P->next->next;
C.p->next=r;
D.p=q->next;
第20题:
有以下结构体说明和变量的定义,且如图14-4所示的指针p指向变量a,指针q指向变量b。则不能把结点b连接到结点a之后的语句是______。
struct node { char data; struct node * next; }a,b,*p=&a,*q=&b:
A.a.next=q;
B.p.next=&b;
C.p->next=&b;
D.(*p).next=q;
第21题:
设指针变量p指向单链表中某结点A,则删除结点A的后继结点需要的操作为()(不考虑存储空间的释放)。
第22题:
在一个单链表中,己知指针q所指向的结点是指针P所指向的结点的前趋结点,若在指针q和p所指向的两个结点之间插入指针s指向的结点,则执行()
第23题:
语句①是在对指针变量p定义时初始化,使p指向x;而语句②是将变量x的值赋给指针变量p所指向的变量
语句①和②中的*p含义相同,都表示给指针变量赋值
语句①是在对指针变量p定义时初始化,使p指向x;而语句②是将变量x的值赋给指针变量p
语句①和②的执行结果都是把变量x的地址赋给指针变量p
第24题: