第一章单元测试
()是一种最简单的线性结构。
( )线性表的数据元素可以由所描述对象的各种特征的数据项组成。
已知单向链表中指针p指向结点A,( )表示删除A的后继结点(若存在)的链操作(不考虑回收)。
已知last指向单向简单链表的尾结点,将s所指结点加在表尾,不正确的操作是____。
已知h是指向单向加头链表的首指针,删除表头结点的操作是_____。
有N个元素组成的线性表,我们说此线性表的长度为( )
对线性表中的数据元素进行( )和( )等操作,实现表的长度的增长或缩短。
线性表的抽象数据类型定义
我们使用( ),实现线性表的顺序存储。
线性表的基本操作是用C语言中的( )对其进行表示的。
在链表中第i 个结点之前插入新的元素 e ,表的逻辑结构不变。
在单链表中插入结点只需要()。但同时,若要在第( )个结点之前插入元素,修改的是第 ( )个结点的指针。
单链表和线性表中所有基本操作相同,且编程实现方法相同。
数字钟程序中使用的时间,可以是系统时间。
和单链表的差别仅在于,判别链表中最后一个结点的条件不再是( ),而是( )。
双向链表的“删除” 时需要同时修改两个方向上的指针,改变结点之间的逻辑关系。
双向链表的“插入” 时不需要同时修改两个方向上的指针,改变结点之间的逻辑关系。
双向链表中,当指针p指向非空表中的非头尾结点时,以下哪个式子是正确的()
双向链表中,当指针p指向非空表中的非头尾结点时,以下哪个式子是正确的()
双向链表需要在结点中设两个指针域( )
A:线性表 B:树 C:图 D:集合
答案:线性表
A:链式存储 B:有序存储 C:顺序存储 D:散列存储
答案:链式存储
A:p=p—>next B:p—>next=p C:p=p—>next—>next D:p—>next=p—>next—>next
答案:p—>next=p—>next—>next
A:s->next=NULL, last->next=s, s=last; B:last->next=s,last=s,last->next=NULL; C:s->next=NULL, last->next=s,last=s; D:last->next=s,s->next=NULL,last=s;
答案:s->next=NULL, last->next=s, s=last;
A:free(h->next);h=h->next; B:p=h,h=p->next;free(p); C:p=h->next,h->next=p->next;free(p); D:p=h->next;free(p);h=h->next;
答案:p=h->next,h->next=p->next;free(p);
A:n B:n+1 C:n-1 D:0
答案:n
A:访问 B:删除 C:插入 D:遍历
答案:删除###插入
A:基本操作 B:数据对象 C:数据关系 D:函数关系
答案:基本操作###数据对象###数据关系
A:数组 B:数值 C:函数 D:语句
答案:数组
A:条件语句 B:结构体 C:函数 D:循环语句
答案:函数
A:错 B:对
答案:错
A:修改指针 B: i C:i+1 D:i-1
答案:修改指针### i ###i-1
A:对 B:错
答案:错
A:错 B:对
答案:对
A:“前继是否为空” B:“前继是否为头结点” C:“后继是否为头结点” D:“后继是否为空”
答案:“后继是否为头结点”###“后继是否为空”
A:对 B:错
答案:对
A:错 B:对
答案:错
A:p->next =p->prior B:p=p->next C:p->next->prior=p D:p=p->prior->next
答案:p->next->prior=p ###p=p->prior->next
A:p->next->prior=p B:p=p->prior C:p->next=p ->prior D:p->prior=p->next
答案:p->next->prior=p
A:数据域 B:next指针域 C:prior指针域 D:parent指针域
答案:next指针域###prior指针域
温馨提示支付 ¥3.00 元后可查看付费内容,请先翻页预览!