一、选择题 32. 已知程序段:
sum=0
For i=1 to 10 step 3
sum=sum+i
i=i*2
Next i
当循环结束后,变量i、sum的值分别为
。
A B C D
B
[解析] 本题考查VBA中循环的知识。本题需要仔细分析循环次数,第一次循环时i的值为1,sum的值也为1,然后i=i*2值变为2,需要再加上步长值3;第二次循环时i的值为5,sum的值也为6,然后i=i*2值变为10,需要再加上步长值3;要进行第三次循环前判断i的值为13不再满足循环条件,所以循环结束。
34. 在窗体上添加一个命令按钮(名为Command1),编写如下事件过程:
Private Sub Command1_Click()
For i=1 To 4
x=4
For j=1 To 3
x=3
For k=-1 To 2
x=x+6
Next k
Next j
Next i
MsgBox x
End Sub
打开窗体后,单击命令按钮,消息框的输出结果是
。
A B C D
B
[解析] 本题考查VBA中多重循环的知识。见到多重循环的问题不要害怕,认真地分析清楚每一次循环这种问题就迎刃而解了。本题中,在每一次外循环开始的时候部把x的值置为4,所以我们只分析最后一次循环就可以了;同理中层循环每一次开始前都把x的值置为3,所以这个问题最后实际上就是x的初值为3,执行最内层循环直到结束就可以了。根据程序内循环执行两次,最后x=3+6+6=15。
二、填空题 1. 数据结构分为逻辑结构和存储结构,循环队列属于______结构。
逻辑
[解析] 数据的逻辑结构主要是反映数据之间的逻辑关系,而存储结构是用来反映数据的逻辑结构在计算机存储空间中的存放形式。循环队列主要是强调数据之间的关系,因此属于逻辑结构。
2. 数据库系统其内部分为三级模式,即概念模式、内模式和外模式。其中,______是用户的数据视图,也就是用户所见到的数据模式。
外模式
[解析] 数据库系统的三级模式分别是内模式、概念模式和外模式。其中,物理模式给出了数据库的物理存储结构和存取方法;概念模式是数据库系统中全局数据逻辑结构的描述;外模式是用户的数据视图,也就是用户所见到的数据模式。
3. 软件开发环境是全面支持软件开发全过程的______集合。
软件工具
[解析] 软件开发环境或称软件工程环境是全面支持软件开发全过程的软件工具集合。这些软件工具按照一定的方法或模式组合起来,支持软件生命周期内的各个阶段和各项任务的完成。
4. 一棵二叉树的中序遍历结果是ABCDEFG,前序遍历结果是DBACFEG,则后序遍历结果为______。
ACBEGFD
[解析] 我们分4大步骤来推理:
①找到根结点:由于前序遍历首先访问根结点,那么前序遍历结果的第一个结点肯定就是整个二叉树的根结点。前序遍历结果是DBACFEG,可知D为二叉树的根结点。
②分出左、右子树;中序遍历中,访问根结点的次序为居中,先访问左子树,再访问右子树。因此,在中序遍历的结果ABCDEFG中,以根结点D为中间界线,前面的ABC在左子树,后面的EFG在右子树。
③分析左子树:首先确定左子树ABC的根点。在前序遍历中,B最靠前,应该是ABC三个结点的根结点;在中序遍历中,A靠前,应该是ABC三个结点的左子树,C为右子树。
④分析右子树:同理分析EFG三个结点,就可以完整地画出整个二叉树的原貌了。
[知识拓展] 本题看似较难,其实比较简单。考生最关键的是把握中序、前序和后序遍历的定义,通过3者不同的遍历顺序,互相对照、步步推理,就能很快得到答案。
5. 某二叉村中度为2的结点有12个,则该二叉树中有______个叶子结点。
13
[解析] 度为0的结点(即叶子结点)总比度为2的结点多一个。
6. 在关系数据库的基本操作中,把两个关系中有相同公共属性值的元组连接到一起并去除重复的元组和属性形成新的二维表的操作称为______。
自然连接
[解析] 本题考查关系运算的知识。关系运算可分为两大类:一类是传统的集合运算,如并、交、差和笛卡儿积;还有一类是专门的关系运算,其中包括选择、投影、连接和自然连接。连接运算是将两个关系拼接成一个新的关系,生成的新关系中包含满足条件的元组;自然连接运算是在连援运算的基础上默认连接条件为公共属性相等,而且要去除重复的属性和重复的元组。
7. 在Access中建立的数据库文件的扩展名是______。
MDB
[解析] 本题考查Access基本概念的知识。在Access中所建立数据库文件的默认扩展名是MDB。
8. 表的设计视图分为上下两部分,上半部分是______,下半部分是字段属性区。
字段输入区
[解析] 本题考查表设计视图的基本知识。表的设计视图分为上下两部分,上半部分是字段输入区,下半部分是字段属性区。
9. 某窗体中有一命令按钮,单击此命令按钮将会运行一个SQL语句,则需要执行的宏操作是______。
RunSQL
[解析] 本题考查宏操作的知识。RunSQL用于执行指定的SQL语句,RunApp用于执行指定的外部应用程序。
10. 在创建主/子窗体之前,必须设置______之间的关系。
表
[解析] 本题考查主/子窗体的知识。在Access中,要想建立主/子二窗体,必须首先正确设置两个表之间的一对多关系。
11. 在窗体中添加一个命令按钮(名为Command1)和一个文本框(名为text1),编写如下事件过程:
Private Sub Command1_Click()
Dim x As Integer,y As Integer,z As Integer
x=3:y=5:z=10
Me!Text1=""
Call f(x,y,z)
Me!text1=z
End Sub
Sub f(a As Integer,b As Integer,c As Integer)
c=b*a
End Sub
打开窗体运行后,单击命令按钮,文本框中显示的内容是______。
15
[解析] 本题考查函数调用中参数传递的知识。在VBA的函数调用时,参数有两种传递方式:传址传递和传值传递。如果在函数声明时没有说明传递类型,则默认为传址传递,即形参的结果会传递给实参。本题中形参均为传址传递,即a=x=3,b=y=5,c=z=10。但是在子程序里面对c重新赋值为c=a*b=15,这个值15会回送给实参z,所以最后显示的值z也就是15。
12. 下面程序的功能是:用Array函数建立一个含有8个元素的数组,然后查找并在文本框Text1中输出该数组中各元素的最小值。请填空。
Option Base 1
Private Sub Command1_Click()
Dim arr1()
Dim Min As Integer,i As Integer
arr1=Array(12,435,76,-24,78,54,866,43)
Min=______
For i=2 To 8
If arr1(i)<Min Then______
Next i
Text1=Min
End Sub
arr1(1) Min=arr1(i)
[解析] 本题考查VBA中程序设计的知识。对于这个问题,需要把数组元素依次与最小值比较,如果比当前的最小值还小,则让这个数组元素成为新的最小值,然后继续比较,直至数组元素都比较一遍为止。由于比较的循环从2开始,显然是预先设置最小值为数组的第一个元素即arr1(1);在比较循环内部如果符合If语句的条件,则让这个数组元素成为新的最小值,即Min=arr1(i)。
13. 在VBA编程中,变量定义的位置和方式不同,则它存在的时间和起作用范围也有所不同,这就是变量的生命周期和______。
作用域
[解析] 本题考查VBA中变量生命周期和作用域的知识。这个问题是纯粹的概念问题,变量存在的时间和起作用的范围分别称作变量的生命周期和作用域。
14. 执行以下程序段后,x的值为______。
Dim x As Integer,i As Integer
x=0
For i=20 To 1 Step-2
x=x+i\5
Next i
18
[解析] 本题考查VBA中循环和整除的知识。显然循环会执行10次,所以这个问题主要需要搞清楚每次循环累加的是什么数值。注意到每次累加的是i整除5的结果,i=20时累加一个4,i=18、16时累加两个3,i=14、12、10时累加三个2,i=8、6时累加两个1。