【单选题】【消耗次数:1】
假定一个链表的表头指针为f,结点结构为(data,next),则向该链表的表头插入一个由p所指向的结点时,应执行的操作为p->next=f和( )。
p=f->next
f=p->next
f=p
f->next=p
参考答案:
复制
纠错
相关题目
【单选题】 假定一个链表的表头指针为f,结点结构为(data,next),则向该链表的表头插入一个由p所指向的结点时,应执行的操作为p-next=f和( )。
①  p=f-next
②  f=p-next
③  f=p
④  f-next=p
【单选题】 若有以下定义:structnode{intdata;structnode*next;}structnode*p;已建立如下图所示的链表:┌──┬──┐┌──┬──┐┌──┬──┐p→│data│next┼→│data│next┼→...→│data│NULL│└──┴──┘└──┴──┘└──┴──┘指针p指向第一个结点,能输出链表所有结点的数据成员data的循环语句是()。
①  while(p!=NULL){printf("%d,",p-p++;}
②  while(p){printf("%d,",p.data);p=p-}
③  for(;p!=NULL;p++)printf("%d,",p
④  -for(;p;p=p-next)printf("%d,",(*p).data);
【单选题】 若有以下定义:structnode{intdata;structnode*next;}*p,*q;已建立如下图所示的链表:┌──┬──┐┌──┬──┐...p→│data│next┼→│data│NULL│└──┴──┘└──┴──┘┌──┬──┐q→│data│next│└──┴──┘不能将指针q所指结点连到上图所示链表末尾的语句是()。
①  q-next=NULL;p=p-p-next=q;
②  p=p-p-next=q;q-next=NULL;
③  p=p-q-next=p-p-next=q;
④  q-next=p-p=p-p-next=q;
【单选题】 在一个链队中,假设f和r分别为队头和队尾指针,p指向一个已生成的结点,现要为该结点的数据域赋值e,并使结点入队的运算为p-data=e; p-next=NULL ; 和( )。
①  A . f-next=p; f=p;
②  B. r-next=p;r=p;
③  C. p-next=r;r=p;
④  D. p-next=f;f=p;
【判断题】 设有一个带头结点的,头指针为head的单向链表,p指向表中某一个结点,且有p-next= L,现要删除头结点,并使该单向链表构造成单向循环链表,通过操作head=head- p-next= head;。
①  正确
②  错误
【单选题】 若有以下定义:structnode{intdata;structnode*next;}structnodem,n,k,*head,*p;已建立如下图所示的链表:mnk┌──┬──┐┌──┬──┐┌──┬──┐head→│data│next┼→│data│NULL│p→│data│next│└──┴──┘└──┴──┘└──┴──┘指针head指向变量m,m.next指向变量n,p指向变量k,不能把结点k插到m和n之间形成新链表的程序段是()。
①  p-next=head-m.next=p;
②  (*head).next=p;(*p).next=
③  head-next=p-next=head
④  -m.next=k.next=
【判断题】 在双向链表中,要删除p所指的结点,其中所用的一条语句(p-prior)-next=p-next;的功能是:使P所指结点的直接前驱的右指针指向P所指结点的直接后继。
①  正确
②  错误
【判断题】 设有一个带头结点的链队列,队列中每个结点由一个数据域data和指针域next组成,front和rear分别为链队列的头指针和尾指针。设p指向要入队的新结点(该结点已被赋值),则入队操作为rear-next=p; p = rear;
①  正确
②  错误
【单选题】 若按如下定义,函数link的功能是()。其中head指向链表首结点,整个链表结构如下图:┌──┬─┐┌──┬─┐┌──┬──┐head→│data│┼→│data│┼→…→│data│NULL│└──┴─┘└──┴─┘└──┴──┘structnode{intdata;structnode*next;};voidlink(structnode*head){structnode*p=head;while(p!=NULL){if(p-data%2==1)printf("%d",p-p=p-}}
①  计算链表head中结点的个数
②  遍历链表head,输出表中值为奇数的元素
③  删除链表head中的所有结点
④  插入一个新元素到链表head中
【单选题】 若有定义:structnode{intdata;structnode*next;};已建立如下图所示的链表:┌─┬─┐┌─┬─┐┌─┬─┐head→│2│┼→│4│┼→…→│28│┼→NULL└─┴─┘└─┴─┘└─┴─┘指针head指向链表首结点,以下函数的功能是()。voidfun(structnode*head){structnode*p=head;while(1){p=p-printf("%d",p-data);if(!p)break;}}
①  显示单向链表中第一个结点的数据
②  显示单向链表中最后一个结点的数据
③  显示单向链表中的所有数据
④  显示单向链表中除第一个结点外的所有数据
随机题目
【单选题】 算法的计算量的大小称为计算的( )。
①  效率
②  复杂性
③  现实性
④  难度
【单选题】 在下列存储形式中,哪一个不是树的存储形式?()
①  双亲表示法
②  孩子链表表示法
③  孩子兄弟表示法
④  顺序存储表示法
【单选题】 已知有向图G=(V,E),其中V={V1,V2,V3,V4,V5,V6,V7},E={V1,V2V1,V3V1,V4V2,V5V3,V5V3,V6V4,V6V5,V7V6,V7},G的拓扑序列是( )。
①  V1,V3,V4,V6,V2,V5,V7
②  V1,V3,V2,V6,V4,V5,V7
③  V1,V3,V4,V5,V2,V6,V7
④  V1,V2,V5,V3,V4,V6,V7
【单选题】 一棵有n个结点的二叉树,按层次从上到下,同一层从左到右顺序存储在一维数组A[1..n]中,则二叉树中第i个结点(i从1开始用上述方法编号)的右孩子在数组A中的位置是()。
①  A[2i](2i=n)
②  A[2i+1](2i+1=n)
③  A[i-2]
④  条件不充分,无法确定
【单选题】 以下数据结构中,()是非线性数据结构。
① 
②  字符串
③  队列
④ 
【单选题】 一棵二叉树高度为h,所有结点的度或为0,或为2,则这棵二叉树最少有( )结点。
①  2h
②  2h-1
③  2h+1
④  h+1
【单选题】 设有三个元素X,Y,Z顺序进栈(进的过程中允许出栈),下列得不到的出栈排列是( )。
①  XYZ
②  YZX
③  ZXY
④  ZYX
【单选题】 在完全二叉树中,若一个结点是叶结点,则它没( )。
①  左子结点
②  右子结点
③  左子结点和右子结点
④  左子结点,右子结点和兄弟结点
【判断题】 计时器(Timer)的Interval属性的默认单位为毫秒。
①  正确
②  错误
【判断题】 改变控件在窗体中的上下位置应修改控件的Width属性。
①  正确
②  错误