3、有以下结构体说明和变量的定义,且指针p指向变量a,指针q指向变量b,则不能把结点b连接到结点a之后的语句是: struct node { char data; struct node *next; } a,b,*p=a,*q=b;A.next=q;B.p.next=b;C.p->next=b;D.(*p).next=q;
3、有以下结构体说明和变量的定义,且指针p指向变量a,指针q指向变量b,则不能把结点b连接到结点a之后的语句是: struct node { char data; struct node *next; } a,b,*p=&a,*q=&b;
A.next=q;
B.p.next=&b;
C.p->next=&b;
D.(*p).next=q;
参考答案和解析
A 本题考查typedef的使用方法,typedef对已存在的类型使用一个新的名字,选项A中ABC为新的类型别名,定义正确。
相关考题:
有以下程序段typedef struct node { int data; struct node *next; } *NODE;NODE p;以下叙述正确的是A)p 是指向 struct node 结构变量的指针的指针B)NODE p ;语句出错C)p 是指向 struct node 结构变量的指针D)p 是 struct node 结构变量
有以下程序段 typedef struct node { int data; struct node *next; } *NODE; NODE p; 以下叙述正确的是( )。A.p是指向struct node结构变量的指针的指针B.NODE p;语句出错C.p是指向struct node结构变量的指针D.p是struct node结构变量
有以下结构体说明和变量定义,如图所示,指针p、q、r分别指向此链表中的三个连续节点。 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;
有以下结构体说明和变量的定义,且指针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;
若有以下定义: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;
有以下结构体说明和变量的定义,且指针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;
有以下结构体说明和变量定义,如图所示,指针p、q、r分别指向一个链表中的三个连续结点。struct node{ int data;struct node *next;} *p, *q, *r;现要将q和r所指结点的先后位置交换,同时要保持链表的连续,以下错误的程序段是A.r->next=q; q->next=r->next; p->next=r;B.q->next=r->next; p->next=r; r->next=q;C.p->next=r; q->next=r->next; r->next=q;D.q->next=r->next; r->next=q; p->next=r;
若以下定义:struct link { int data; struck 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;
若有以下定义: 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;
以下程序的功能是:建立一个带有头结点的甲—向链表,并将存储在数组中的字符依次转存到链表的各个结点中,请从与下划线处号码对应的一组选项中选择出正确的选项。#include <stdlib.h>struct node{ char data; struct node *next: };(1) CreatList(char *s){struct node *h,*p,*q;h = (struct node *)malloc sizeof(struct node));p=q=h;while(*s! ='\0'){p = (struct node *)malloc(sizeof (struct node));p->data = (2) ;q->next = p;q - (3) ;S++;}p->next='\0';return h;}main(){char str[]="link list";struct node *head;head = CreatList(str);}(1)A.char*B.struct nodeC.struct node*D.char
有以下结构体说明和变量定义,如图所示,指针p、q、r分别指向一个链表中的三个连续结点。 struct node { int data; tract node * next; }*p,*q,*r;现要将q和r所指结点的先后位置交换,同时要保持链表的连续,以下错误的程序段是A.r->next=q;q->next=r->next;p->next=r;B.q->next=r->next;p-next=r;r->next=q;C.p->next=r;q->next=r->next;r->next=q;D.q->next=r->next;r->next=q;P->next=r;
有以下结构体说明和变量的定义,且如下图所示指针p指向变量a,指针q指向变量b。则不能把结点 b连接到结点a之后的语句是( ) struct node { char data; struct noe *next; }a,b, *p=a, *q=b;A.a,next=q;B.p.next=b;C.p->next=b;D.(*p).next=q;
有以下结构体说明和变量定义,如图所示: 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=rD.p=q->next;
有以下结构体说明和变量的定义,且指针p指向变量a,指针q指向变量b。则不能把节点b连接到节点a之后的语句是struct node{ char data;stmct node * next;} a,b, * p=a, * q=b;A.a. next=q;B.p. next=b;C.p->next=b;D.( * p) .next=q;
有以下结构体说明和变量定义,如图所示,指针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;
有以下结构体说明和变量的定义,且指针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=bD.(*p).next=q;
现有以下结构体说明和变量定义,如图所示,指针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->next=q;p->next=r,D.r->next=q;P->next=r;q->next=r->next;
有以下结构体说明和变量的定义,且指针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;
现有以下结构体说明和变量定义,如图所示,指针p、q、r分别指向一个链表中连续的三个节点。 struct 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->next=q;p->next=r;D.r->next=q;p->next=r;q->next=r-next;
现有以下结构体说明和变量定义,如图所示,指针p、q、r分别指定一个链表中连续的3个结点。struct node {bar data; struct node*next;}*p,*q,*r; 现要将q和r所指结点交换前后位置,同时要保持链表的结构,下列不能完成此操作的语句是( )。A.q-next=r-next;P next=r;r- next =q;B.q-next=r;q-next=r-next;r-next=q;C.q-next=r-next;r-next=q;P-next=r:D.q-next=q;P-next=r;q-next=r- next;
有以下结构体说明和变量定义,如下图所示,指针p、q、r分别指向一个链表中的3个连续结点。 struct node { int data; struct node *next; } *p,*q,*r;现要将q和r所指结点的先后位置交换,同时要保持链表的连续,以下错误的程序段是( )。A.r->next=q;q->next=r->next;p->next=r;B.q->next=r->neaxt;p->next=r;r->next=q;C.p->next=r;q->next=r->next;r->next=q;D.q->next=r->next;r->next=q;p->next=r;
有以下结构说明和变量定义,指针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;
现有以下结构体说明和变量定义,如图所示,指针P,q,r分别指向一个链表中连续的三个结点。struct 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->next=q;p->next=r;D.r->next=q;P->next=r;q->next=r->next;
有以下结构体说明和变量定义,如图所示,指针p、 q、 r分别指向一个链表中的三个连续结点。 struct node int data; struct node *next; } *p, *q,*r;现要将q和r所指结点的先后位置交换,同时要保持链表的连续,以下错误的程序是A.r->next=q; q->next=r->next; p->next=r;B.q->next=r->next; p->next=r; r->next=q;C.p->next=r; q->next=r->next; r->next=q;D.q->next=r->next; r->next=q; p->next=r;
有以下结构体说明和变量的定义,且如图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;
有以下结构体说明和变量定义,如图所示: struet 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;
若以下定义: 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.q->next=p->next;p->next=c;D.(*p).next=c;(*q).next=b;
设指针变量p指向单链表中的结点A,则删去结点A的语句序列为 Q=p->next;p->data = p->data: p->next=(); :feee(q);