●消息传递是对象间通信的手段,一个对象通过向另一个对象发送消息来请求其服务。一个消息通常包括__(1)__。
(1)A.发送消息的对象的标识、调用的发送方的操作名和必要的参数
B.发送消息的类名和接收消息的类名
C.接收消息的对象的标识、调用的接收方的操作名和必要的参数
D.接收消息的类名
●采用面向对象技术开发的应用系统的特点是__(2)__。
(2)A.重用性更强 B.运行速度更快 C.占用存储量小 D.维护更复杂
●扩展名为DLL的动态链接文件的特点是__(3)__。
(3)A.可以自由地插入到其他的源程序中使用
B.本身是一个数据文件,可以与其他程序动态地链接使用
C.本身可以独立运行,也可以供其他程序在运行时调用
D.本身不能独立运行,但可以供其他程序在运行时调用
●将一个三对角矩阵A[l..100,1..100]中的元素按行存储在一维数组B[l..298]中,矩阵A中的元素A[66,65]在数组B中的下标为___(4)___。
(4)A.195 B.196 C.197 D.198
●给定一个有n个元素的线性表。若采用顺序存储结构,则在等概率前提下,向其插入一个元素需要移动的元素个数平均为__(5)__。
(5)A.n+l B.n/2 C.(n+l)/2 D.n
●__(6)__是线性结构的数据结构。
(6)A.列表 B.高维数组 C.双端队列 D.二叉树
●结论“___(7)__”是正确的。
(7)A.二叉树的度为2 B.树中结点的度可以小于2
C.二叉树中至少有一个结点的度为2 D.二叉树中任何一个结点的度都为2
●某线性表最常用的运算是插入和删除,插入运算是指在表尾插入一个新元素,。删除运算是指删除表头第一个元素,那么采用__(8)___存储方式最节省运算时间。
(8)A.仅有尾指针的单向循环链表 B.仅有头指针的单向循环链表
C.单向链表 D.双向链表
●表达式采用逆波兰式表示时可以不用括号,而且可以用基于___(9)___的求值过程进行计算。与逆波兰式ab+cd+*对应的中缀表达式是___(10)___。
(9)A.栈 B.队列 C.符号表 D.散列表
(10)A.a+b+c*d B.(a+b)*c+d C.(a+b)*(c+d) D.a+b*c+d
●设数组a[3..16,5..20]的元素以列为主序存放,每个元素占用两个存储单元,则数组元素a[i,j](3≤i≤16,5≤j≤20)的地址计算公式为___(11)___。
(11)A.a-118+2i+28j B.a-116+2i+28j
C.a-144+2i+28j D.a-146+2i+28j
●若正规表达式r=(a|b|c)(0|1)*,则L(r)中有__(12)__个元素。
(12)A.12 B.18 C.6 D.无穷
●从编译程序的语法分析角度看,源程序是一个句子的集合,__(13)__可以较好地反映句子的结构。
(13)A.线性表 B.树 C.强连通图 D.堆栈
●在下面的主程序中,实参a与形参x以引用调用(call by reference)的方式传递信息,实参b与形参y以值调用(call by value)的方式传递信息,那么,从过程"compute"返回主程序后a和b的值分别为___(16)___。
Main program Procedure compute(x,y)
a:=1;
b:=2;
compute(a,b);x := x + 2*y;
y := 2*x + y;
return;
责任编辑:cyth