对线性表进行二分法检索,其前提条件是(  )。

  • A+
(1)【◆题库问题◆】:[单选] 对线性表进行二分法检索,其前提条件是(  )。
A.线性表以顺序方式存储,并按关键码值排好序
B.线性表以顺序方式存储,并按关键码的检索频率排好序
C.线性表以链式方式存储,并按关键码值排好序
D.线性表以链式方式存储,并按关键码的检索频率排好序

【◆参考答案◆】:A

【◆答案解析◆】:A。【解析】对线性表进行二分法检索,要求线性表是按顺序方式存储的,并按关键码值的大小排好序。

(2)【◆题库问题◆】:[单选] 下面哪一项不是数据模型所描述的内容?(  )
A.数据结构
B.数据操作
C.数据类型
D.数据约束

【◆参考答案◆】:C

(3)【◆题库问题◆】:[单选] 下列叙述中正确的是(  )。
A.有一个以上根结点的数据结构不一定是非线性结构
B.只有一个根结点的数据结构不一定是线性结构
C.循环链表是非线性结构
D.双向链表是非线性结构

【◆参考答案◆】:B

(4)【◆题库问题◆】:[单选] 若有以下的定义:“intt[3][2];”,能正确表示t数组元素地址的表达式的是(  )。
A.
B.
C.
D.

【◆参考答案◆】:C

【◆答案解析◆】:数组的下标是从0开始的,选项A中越界,行下标和列下标都不能越界;选项B中,虽然是个地址,但是也同样越界了;选项C中表示的是第一个的首地址;选项D表示的是其元素的值,并不是地址。

(5)【◆题库问题◆】:[单选] 在单链表中,增加头结点的目的是(  )。
A.方便运算的实现
B.使单链表至少有一个结点
C.标识表结点中首结点的位置
D.说明单链表是线性的链式存储实现

【◆参考答案◆】:A

【◆答案解析◆】:根据单链表(包含头结点)的结构,只要掌握了表头,就能够访问整个链表,因此增加头结点的目的是便于运算的实现。

(6)【◆题库问题◆】:[单选] 有如下程序: INPUT TO A1 IF A1=10B1=0 ENDIFB1=1假定从键盘输入的A的值一定是数值型,那么上面条件选择程序的执行结果是(  )。
A.1
B.由A的值决定
C.程序出错

【◆参考答案◆】:A

【◆答案解析◆】:本题中:若IF条件成立,则先执行B1=0,后执行B1=1;若IF条件不成立,则直接执行B1=1。所以不论IF条件成立与否,最后都会执行B1=1语句,即B1的值一定为1。

(7)【◆题库问题◆】:[单选] 在软件开发中,下面不属于设计阶段的任务的是(  )。
A.数据结构设计
B.定义模块算法
C.给出系统模块结构
D.定义需求并建立系统模型

【◆参考答案◆】:B

(8)【◆题库问题◆】:[单选] 在一棵二叉树的前序遍历、中序遍历、后序遍历所产生的序列中,所有叶结点的先后顺序(  )。
A.都不相同
B.完全相同
C.前序和中序相同,而与后序不同
D.中序和后序相同,而与前序不同

【◆参考答案◆】:B

(9)【◆题库问题◆】:[单选] 软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件)。下面属于应用软件的是(  )。
A.学生成绩管理系统
B.C语言编译程序
C.UNIX操作系统
D.数据库管理系统

【◆参考答案◆】:A

(10)【◆题库问题◆】:[单选] 有以下程序 #include <stdio.h>#include <stdlib.h>fun(int *p1,int *p2,int*s){s=(int*)malloc(sizeof(int));*s=*p1+*p2;free(s);}void main(){ int a=1,b=40,*q=&a;fun(&a,&b,q);printf("%d",*q);}程序运行后的输出结果是
A.42
B.0
C.1
D.41

【◆参考答案◆】:C

【◆答案解析◆】:执行fun(&a,&b,q);语句时,在内存中开辟了一块内存空间,存放变量a 与b 的和,并用指针变量q 引用它,但是当这条语句执行结束,这块内存空间又释放了,指针这量q 仍然引用的是变量a的地址,所以输出结果为1。

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: