1、计算机等级考试二级 VISUAL+BASIC 机试 2 及答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:40,分数:40.00)1.以下合法的 VB 变量名是( )。A) _x B) 2y C) a#b D) x_1_x(分数:1.00)A.B.C.D.2.窗体上有一个名称为 Label1 的标签;一个名称为 Timer1 的计时器,其 Enabled 和 Interval 属性分别为 True 和 1000。编写如下程序:Dim n As IntegerPrivate Sub Timer1_Timer()ch = Chr( n + Asc( “A“ ) )Label
2、1. Caption = chn=n+1n = n Mod 4End Sub运行程序,将在标签中( )。A) 不停地依次显示字符“A”、“B”、“C”、“D”,直至窗体被关闭B) 依次显示字符“A”、“B”、“C”、“D”各一次C) 每隔 1 秒显示字符“A”一次D) 每隔 1 秒依次显示 26 个英文字母中的一个(分数:1.00)A.B.C.D.3.设:a=12,b=5,c=7,表达式 x=(a/c+a Mod 1)+Int(13/5)的值是( )。A) 5 B) 6 C) 7 D) 9(分数:1.00)A.B.C.D.4.在数据库设计中,将 E-R 图转换成关系数据模型的过程属于( )。A
3、) 需求分析阶段 B) 概念设计阶段C) 逻辑设计阶段 D) 物理设计阶段(分数:1.00)A.B.C.D.5.以下关于单选按钮和复选框的叙述中,正确的是( )。A) 单选按钮和复选框都能从多个选项中选择一项B) 单选按钮和复选框被选中时,选中控件的 Value 属性值为 TrueC) 是否使用框架控件将单选按钮分组,对选项没有影响D) 是否使用框架控件将复选框分组,对选项没有影响(分数:1.00)A.B.C.D.6.窗体上有一个列表框控件 List1。以下叙述中错误的是( )。A) List1 中有 ListCount-1 个列表项B) 当 List1. Selected(i)=True,表
4、明第 i 项被选中C) 设置某些属性,可以使列表框显示多列数据D) List1. Text 的值是最后一次被选中的列表项文本(分数:1.00)A.B.C.D.7.在下列几种排序方法中,要求内存量最大的是( )。A) 冒泡排序 B) 插入排序和选择排序C) 归并排序 D) 快速排序(分数:1.00)A.B.C.D.8.用二维表的形式表示实体和实体间联系的数据模型( )。A) 关系模型 B) 层次模型C) 网状模型 D) 数据模型(分数:1.00)A.B.C.D.9.在程序中要使用 Array 函数给数组 arr 赋初值,则以下数组变量定义语句中错误的是( )。A) Static arr B) D
5、im arr(5)C) Dim arr() D)Dim arr As Variant(分数:1.00)A.B.C.D.10.窗体上有名称为 Command1 的命令按钮,名称分别为 Label1、Label2、Label3 的标签。编写如下程序:Private x As IntegerPrivate Sub Command1_Click()Static y As IntegerDim z As Integern=5z=z+ny=y+nx=x+yLabel1 = xLabel2 = yLabel3 = zEnd Sub运行程序,连续 3 次单击命令按钮后,3 个标签中分别显示的是( )。A) 5
6、 5 5 B) 15 10 5 C) 15 15 15 D) 30 15 5(分数:1.00)A.B.C.D.11.若要使文本框能够输入多行文本,应该设置的属性是( )。A) MultiLine B) WordWrap C) ScrollBars D) AutoSize(分数:1.00)A.B.C.D.12.下面关于文件叙述中错误的是( )。A) VB 数据文件需要先打开,再进行处理B) 随机文件每个记录的长度是固定的C) 不论是顺序文件还是随机文件,都是数据文件D) 顺序文件的记录是顺序存放的,可以按记录号直接访问某个记录(分数:1.00)A.B.C.D.13.下列不属于结构化分析的常用工具
7、的是( )。A) 数据流图 B) 流程图C) 数据字典 D) 判定树和判定表(分数:1.00)A.B.C.D.14.编写如下程序:Private Sub Command1_Click()Dim i As Integer, j As Integern = InputBox( “输入一个大于 1 的正整数“ )For i = 2 To nFor j = 2 To Sqr(i)If i Mod j = 0 Then Exit ForNext jIf j Sqr(i) Then Print iNext iEnd Sub该程序的功能是( )。A) 判断 n 是否为素数 B) 输出 n 以内所有的奇数C)
8、 输出 n 以内所有的偶数 D) 输出 n 以内所有的素数(分数:1.00)A.B.C.D.15.窗体上有一个名称为 VScroll1 的垂直滚动条,要求程序运行时,滚动块的初始位置在最下端,应该使VScroll1. Value 的值等于( )。A) VScroll1. LargeChange B) VSeroll1. SmallChangeC) VScroll1. Max D) VScroll1. Min(分数:1.00)A.B.C.D.16.以下关于 VB 特点的叙述中,错误的是( )。A) VB 中一个对象可有多个事件过程B) VB 应用程序能以编译方式运行C) VB 应用程序从 For
9、m_Load 事件过程开始执行D) 在 VB 应用程序中往往通过引发某个事件导敛对对象的操作(分数:1.00)A.B.C.D.17.命令按钮 Command1 的事件过程如下:Private Sub Command1_Click()Dim art(5, 5) As IntegerDim i As Integer, j As IntegerFor i = 1 To 4For j = 2 To 4arr(i, j) =i+jNext jNext iPrint arr(1, 3) + arr(3, 4)End Sub执行上述过程,输出结果是( )。A) 6 B) 7 C) 11 D) 12(分数:1
10、.00)A.B.C.D.18.有如下程序:Private Sub Command1_Click()Dim i As Integer, j As IntegerDim sum As Integern=1Doj=1Dosum = sum + jj=j+1Print j;Loop Until j 3n=n+2Loop Until n 10Print sumEnd Sub运行上述程序,外层 Do 循环执行的次数为( )。A) 4 B) 5 C) 7 D) 10(分数:1.00)A.B.C.D.19.设运行程序时弹出的菜单如图所示,关于该菜单,以下叙述中错误的是( )。(分数:1.00)A.B.C.D.
11、20.在窗体上画一个名称为 Command1 的命令按钮,编写如下事件过程:Private Sub Command1_Click()n=0For i = 0 To 10X = 2 * i - 1If X Mod 3 = 0 Then n = n + 1Next iPrint nEnd Sub运行程序,单击命令按钮,则窗体上显示的是( )。A) 1 B) 3 C) 5 D) 7(分数:1.00)A.B.C.D.21.设工程文件中包名称分别为 Form1、Form2 的两个窗体,且 Form1 的菜单属性设置如下:标题(p) 名称(m) 内缩符号 Index窗体 Mnu() 无显示窗体 2Mnu1
12、 1 1退出 Mnu1 1 2窗体 Form1 中的程序如下:Dim Flag As BooleanPrivate Sub Form_Load()Flag = TrueEnd SubPrivate Sub mnu1_Click(index As Integer)If Index = 1 ThenIf Flag = True ThenForm2. showmnu1 (1). Caption = “隐藏窗体 2“Flag = FalseElseForm2. Hidemnu1 (1). Caption = “显示窗体 2“Flag = TrueEnd IfEnd IfIf Index = 2 The
13、n EndEnd Sub关于上述程序,以下叙述中错误的是( )。A) Index 属性的值可以用来区分控件数组元素B) Index 为 1 的菜单项的标题可能会改变C) 两个名称均为 Mnu1 的菜单项构成一个控件数组D) 语句 Form2. Hide 将 Form2 卸载(分数:1.00)A.B.C.D.22.以下自定义数据类型的语句中,正确的是( )。A) Type studentID As String * 20name As String * 10age As IntegerEnd studentB) Type studentID As String * 20name As Strin
14、g * 10age As IntegerEnd TypeC) Type studentID As Stringname As Stringage As IntegerEnd studentD) TypeID As String * 20name As String * 10age As IntegerEnd Type student(分数:1.00)A.B.C.D.23.以下关于命令按钮的叙述中正确的是( )。A) 命令按钮上可以显示图片B) 命令按钮能够分别响应单击、双击事件C) 程序运行时,不能改变命令按钮上的文字D) 若命令按钮的 Cancel 属性设为 True,焦点在其他控件上时,按
15、下回车键与单击该按钮的效果相同(分数:1.00)A.B.C.D.24.用链表表示线性表的优点是( )。A) 花费的存储空间较顺序存储少 B) 没有明显优势C) 便于插入和删除操作 D) 便于随机存收操作(分数:1.00)A.B.C.D.25.下面不属于软件工程的 3 要素的是( )。A) 需求 B) 方法 C) 工具 D) 过程(分数:1.00)A.B.C.D.26.以下关于控件数组的叙述中,错误的是( )。A) 各数组元素共用相同的事件过程B) 各数组元素通过下标进行区别C) 数组可以由不同类型的控件构成D) 各数组元素具有相同的名称(分数:1.00)A.B.C.D.27.以下过程的功能是从
16、数组中寻找最大值:Private Sub FindMax(a() As Integer, ByRef Max As Integer)Dim s As Integer, f As IntegerDim i As Integers = LBound(a)f = UBound(a)Max =a(s)For i = s To fIf a(i) Max Then Max = a(i)NextEnd Sub以下关于上述过程的叙述中,错误的是( )。A) 语句 Call FindMax(a,m)可以调用该过程,其中的 a 是数组,m 是 Integer 类型变量B) For 循环次数等于 a 数组的元素数C
17、) 过程末尾应该增加一条返回最大值的语句 FindMax=MaxD) 参数 Max 用于存放找到的最大值(分数:1.00)A.B.C.D.28.在软件工程中,白箱测试法可用于测试程序的内部结构。此方法将程序看做是( )。A) 路径的集合 B) 选择的集合C) 操作的集合 D) 目标的集合(分数:1.00)A.B.C.D.29.有如下语句序列:Dim a, b As IntegerPrint aPrint b执行以上语句序列,下列叙述中错误的是( )。A) 输出的 a 值是 0 B) 输出的 b 值是 0C) a 是变体类型变量 D) b 是整型变量(分数:1.00)A.B.C.D.30.算法一
18、般都可以用哪几种控制结构组合而成( )。A) 选择、分支、递归 B) 顺序、循环、选择C) 循环、递归、选择 D) 顺序、选择、嵌套(分数:1.00)A.B.C.D.31.窗体上有一个名称为 Command1 的命令按钮,一个名称为 Text1 的文本框。编写如下程序:Private Sub Command1_Click()Dim x As Integerx = Val( InputBox (“输入数据“) )Text1 = Str( x + fun(x) + fun(x) )End SubPrivate Function fun(ByRef n As Integer)If n Mod 3 =
19、 0 Thenn=n+nElsen=n*nEnd Iffun=nEnd Function对于上述程序,以下叙述中错误的是( )。A) 语句 fun=n 有错,因为 n 是整型,fun 没有定义类型B) 运行程序,输入值为 5 时,文本框中显示 655C) 运行程序,输入值为 6 时,文本框中显示 42D) ByRef 表示参数按址传递(分数:1.00)A.B.C.D.32.以下关于变量作用域的叙述中错误的是( )。A) 在窗体模块的声明部分声明的 Private 变量,其作用域是窗体内的所有过程B) 在标准模块的声明部分声明的 Private 变量,其作用域是模块内的所有过程C) 在窗体模块的
20、声明部分声明的 Pubilc 变量,其作用域是本窗体的所有过程D) 在标准模块的声明部分声明的 Pubilc 变量,其作用域是应用程序的所有过程(分数:1.00)A.B.C.D.33.在数据管理技术发展过程中,文件系统与数据库系统的主要区别是数据库系统具有( )。A) 数据较低的冗余度 B) 数据共享度高C) 特定的数据模型 D) 专门的数据管理软件(分数:1.00)A.B.C.D.34.窗体的 MouseUp 事件过程如下:Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Singl
21、e)End Sub关于以上定义,以下叙述中错误的是( )。A) 根据 shift 参数,能够确定使用转换键的情况B) 根据 X、Y 参数可以确定触发此事件时鼠标的位置C) Button 参数的值是在 MouseUp 事件发生时,系统自动产生的D) MouseUp 是鼠标向上移动时触发的事件(分数:1.00)A.B.C.D.35.现有程序如下:Option Base 1Private Sub Form_Click()Dim x(5, 6)As Integer, y(5)As IntegerFor i = 1 To 5For j =1 To 6x(i, j) = Int(Rnd * 9+1)Nex
22、t jNext iCall f(5, 6, x, y)For i=1 To 5Print y(i);Next iEnd SubSub f(m As Integer, n As Integer, a()As Integer, b()As Integer)For i = 1 To mb(i) =0For j = 1 To nb(i) =b(i) +a(i, j)Next jNext iEnd Sub关于上述程序,以下叙述中正确的是( )。A) 调用过程语句有错,参数不匹配B) 程序有错,数组下标越界C) y 数组中保存的是 x 数组每行数据之和D) x 数组中数据的取值范围是 1-10(分数:1.
23、00)A.B.C.D.36.以下关于 VB 文件的叙述中,正确的是( )。A) 标准模块文件的扩展名是. frmB) VB 应用程序可以被编译为. exe 文件C) 一个工程文件只能含有一个标准模块文件D) 类模块文件的扩展名为. bas(分数:1.00)A.B.C.D.37.以下程序的功能是随机产生 10 个两位的整数:Option Base 1Private Sub Command1_Click()Dim a(10) As IntegerDim i As IntegerRandomizeFor i = 1 To 10a(i) = Int(Rnd * 100) + 1Print a(i)Ne
24、xt iEnd Sub运行以上程序,发现有错误,需要对产生随机数的语句进行修改。以下正确的修改是( )。A) a(i)=Int(Rnd * 100) B) a(i)=Int(Rnd * 90)+10C) a(i)=Int(Rnd * 100)+10 D) a(i)=Int(Rnd * 101)(分数:1.00)A.B.C.D.38.窗体上有一个名称为 CD1 的通用对话框,一个名称为 Command1 的命令按钮,相应的事件过程如下:Private Sub Command1_Cick()CD1. Fiher = “All File | *. * | Text File | *. txt | W
25、ord | *. Doc“CD1. FilterIndex = 2CD1. FileName = “E: /Test. ppt“CD1. InitDir = “E: /“CD1. ShowOpenEnd Sub关于上述程序,以下叙述中正确的是( )。A) 初始过滤器为“*. *”B) 指定的初始目录为“E: /”C) 以上程序代码实现打开文件的操作D) 由于指定文件类型是. ppt,所以导致打开文件的操作失败(分数:1.00)A.B.C.D.39.设窗体名称为 frm1。以下叙述中正确的是( )。A) 运行程序时,能够加载窗体的事件过程是 frm1_LoadB) 运行程序时,能够加载窗体的事件
26、过程是 Form1_LoadC) 程序运行中用语句:frm1. Name=“New”可以更改窗体名称D) 程序运行中用语句:frm1. Caption=“新标题”可以改变窗体的标题(分数:1.00)A.B.C.D.40.下列说法中,不属于数据模型所描述的内容的是( )。A) 数据结构 B) 数据操作 C) 数据约束 D) 数据管理(分数:1.00)A.B.C.D.二、基本操作题(总题数:2,分数:18.00)41.在名称为 Form1 的窗体上添加一个名称为 Command1 的命令按钮数组,含三个命令按钮,它们的标题依次为“是”、“否”、“取消”,Index 属性分别为 0、1、2,每个按钮
27、的高、宽均为 300、800。窗体的标题为“按钮窗口”。运行后的窗体如图所示。注意:存盘时必须存放在考生文件夹下,工程文件名保存为 sjt1. vbp,窗体文件名保存为 sjt1. frm。(分数:9.00)_42.在名称为 Form1 的窗体上添加一个名称为 Sha1 的形状控件,然后建立一个菜单,名称为 shape0,标题为“形状”,该菜单有两个子菜单,其名称分别为 shape1 和 shape2,其标题分别为“正方形”和“圆形”,如图所示。然后编写与适当的程序。程序运行后,如果选择“正方形”菜单项,则形状控件显示为正方形;如果选择“圆形”菜单项,则窗体上的形状控件显示为圆形。注意:程序中
28、不能使用变量,每个事件过程中只能写一条语句。保存时必须存放在考生文件夹下,工程文件名保存为 sjt2. vbp,窗体文件名保存为 sjt2. frm。(分数:9.00)_三、简单应用题(总题数:2,分数:24.00)43.在考生文件夹下有一个工程文件 sjt3. vbp,窗体上已经有两个文件框,名称分别为 Text1、Text2;还有一个命令按钮,名称为 C1,标题为“确定”;请添加两个单选按钮,名称分别为 Op1、Op2,标题分别为“男生”、“女生”,再添加两个复选框,名称分别为 Ch1、Ch2,标题分别为“体育”、“音乐”。请编写适当的事件过程,使得程序在运行时,单击“确定”按钮后实现下面
29、的操作:根据选中的单选按钮,在 Text1 中显示“我是男生”或“我是女生”。根据选中的复选框,在 Text2 中显示“我的爱好是音乐”或“我的爱好是体育”或“我的爱好是体育音乐”。如图所示。注意:不得修改已经给出的程序和已有控件的属性。在结束程序运行之前,必须选中一个单选按钮和至少一个复选框,并单击“确定”按钮。必须使用窗体右上角的关闭按钮结束程序,否则无成绩。(分数:12.00)_44.在考生文件夹下有一个工程文件 sjt4. vbp。窗体上有一个名称为 Timer1 的计时器,一个名称为List1 的列表框和一个名称为 Label1 的标签,如图所示。请通过属性窗口向列表框添加四个项目,
30、分别是:“第一项”、“第二项”、“第三项”、“第四项”。程序运行后,将计时器的时间间隔设置为 1 秒钟,即每一秒钟从列表框中取出一个项目显示在 Label1 的标签中,首先显示“第一项”,然后,依次显示“第二项”、“第三项”、“第四项”,如此循环。在给出的窗体文件中已经有了全部控件和程序,但不完整,请添加 List1 中的项目,去掉程序中的注释符,把程序中的?改为正确的内容。注意:考生不得修改工程中已经存在的内容和控件属性,最后将修改后的文件按原文件名存盘。(分数:12.00)_四、综合应用题(总题数:1,分数:18.00)45.在窗体上画 1 个文本框,名称为 Text1(multiline
31、 属性为 True),然后再添加三个命令按钮,名称分别为 Command1、Command2 和 Command3,标题分别为“读数”、“统计”和“存盘”,如图所示。程序的功能是:单击“读数”按钮,则把考生文件夹下的 in5.txt 文件中的所有英文字符放入 Text1(MutiLine属性为 True)中;单击“统计”按钮,找出并统计英文字母 i,j,k,l,m,n(不区分大小写)各自出现的次数;单击“存盘”按钮,将字母 i 到 n 出现次数的统计结果依次存到考生目录下的顺序文件 out5. txt中。注意:存盘时必须存放在考生文件夹下,工程文件名保存为 sjt5. vbp,窗体文件名保存为
32、 sjt5. frm。(分数:18.00)_计算机等级考试二级 VISUAL+BASIC 机试 2 答案解析(总分:100.00,做题时间:90 分钟)一、选择题(总题数:40,分数:40.00)1.以下合法的 VB 变量名是( )。A) _x B) 2y C) a#b D) x_1_x(分数:1.00)A.B.C.D. 解析:解析 VB 中变量的命名规则为:必须以字母或汉字开头由字母、汉字、数字或下划线组成不能使用 VB 的保留字。_x 不能以_下划线开头,不合法;2y 不能以数字开头,不合法;a#b 中有#,不合法;D 选项符合命名规则,故 D 选项正确。2.窗体上有一个名称为 Label
33、1 的标签;一个名称为 Timer1 的计时器,其 Enabled 和 Interval 属性分别为 True 和 1000。编写如下程序:Dim n As IntegerPrivate Sub Timer1_Timer()ch = Chr( n + Asc( “A“ ) )Label1. Caption = chn=n+1n = n Mod 4End Sub运行程序,将在标签中( )。A) 不停地依次显示字符“A”、“B”、“C”、“D”,直至窗体被关闭B) 依次显示字符“A”、“B”、“C”、“D”各一次C) 每隔 1 秒显示字符“A”一次D) 每隔 1 秒依次显示 26 个英文字母中的一
34、个(分数:1.00)A. B.C.D.解析:解析 Asc 函数返回字符的 ASCII,Chr 函数将数值转换成相应的 ASCII 码字符。计时器间隔Interval 属性设置为 1000,则计时器事件每 1 秒钟发生一次。n 的值每次调用计时器事件过程都会加1,n=n Mod 4 又会使 n 值只能为 0、1、2、3,因此程序运行后每 1 秒 Label1 标签将依次显示“A”、“B”、“C”、“D”。3.设:a=12,b=5,c=7,表达式 x=(a/c+a Mod 1)+Int(13/5)的值是( )。A) 5 B) 6 C) 7 D) 9(分数:1.00)A. B.C.D.解析:解析 按
35、算术运算符优先级从高到低顺序依次计算:/、/、Mod,结果为 5,故选 A。4.在数据库设计中,将 E-R 图转换成关系数据模型的过程属于( )。A) 需求分析阶段 B) 概念设计阶段C) 逻辑设计阶段 D) 物理设计阶段(分数:1.00)A.B.C. D.解析:解析 数据库的逻辑设计主要工作是将 E-R 图转换成指定的 RDBMS 中的关系模式。5.以下关于单选按钮和复选框的叙述中,正确的是( )。A) 单选按钮和复选框都能从多个选项中选择一项B) 单选按钮和复选框被选中时,选中控件的 Value 属性值为 TrueC) 是否使用框架控件将单选按钮分组,对选项没有影响D) 是否使用框架控件将
36、复选框分组,对选项没有影响(分数:1.00)A.B.C.D. 解析:解析 复选框按钮可以同时选择多个,而在一组单选按钮中,只能选择其中的一个。单选按钮被选中时,其 Value 属性值为 True,如果没有被选中其 Value 值为 False,复选框的 Value 属性可以设置为0、1 和 2,分别代表没选中、选中和禁用。单选按钮一般用框架进行分组,每个框架内的单选按钮的操作不影响其他组的按钮,而复选框是否分组对选项没有影响。6.窗体上有一个列表框控件 List1。以下叙述中错误的是( )。A) List1 中有 ListCount-1 个列表项B) 当 List1. Selected(i)=
37、True,表明第 i 项被选中C) 设置某些属性,可以使列表框显示多列数据D) List1. Text 的值是最后一次被选中的列表项文本(分数:1.00)A. B.C.D.解析:解析 列表框控件的列表项个数即为 ListCount 属性值。如果列表项的某项被选中,则该项的Selected 属性值为 True。列表框控件的 Columns 属性用来确定列表框的列数。Text 属性的值为最后一次选中的表项的文本,不能直接修改 Text 属性。7.在下列几种排序方法中,要求内存量最大的是( )。A) 冒泡排序 B) 插入排序和选择排序C) 归并排序 D) 快速排序(分数:1.00)A.B.C. D.
38、解析:解析 快速排序的基本思想是,通过一趟排序将待排序记录分割成独立的两部分,其中一部分记录的关键字均比另一部分记录的关键字小,再分别对这两部分记录继续进行排序,以达到整个序列有序;插入排序的基本操作是指将无序序列中的各元素依次插入到已经有序的线性表中,从而得到一个新的序列;选择排序的基本思想是:扫描整个线性表,从中选出最小的元素,将它交换到表的最前面(这是它应有的位置),然后对剩下的子表采用同样的方法,直到表空为止;归并排序是将两个或两个以上的有序表组合成一个新的有序表。本题答案为 C)。8.用二维表的形式表示实体和实体间联系的数据模型( )。A) 关系模型 B) 层次模型C) 网状模型 D
39、) 数据模型(分数:1.00)A. B.C.D.解析:解析 层次模型是最早发展出来的数据库模型。它的基本结构是树形结构,这种结构方式在现实世界中很普遍,如家族结构、行政组织机构,它们自顶向下、层次分明。关系模型:用二维表的形式表示实体和实体间联系的数据模型。关系模型的特点:关系模型与非关系模型不同,它是建立在严格的数学概念基础上的。关系模型的概念单一,无论实体或实体之间的联系都用关系表示。存取路径对用户透明。关系必须是规范化的关系。本题答案为 A)。9.在程序中要使用 Array 函数给数组 arr 赋初值,则以下数组变量定义语句中错误的是( )。A) Static arr B) Dim ar
40、r(5)C) Dim arr() D)Dim arr As Variant(分数:1.00)A.B. C.D.解析:解析 用 Array 函数可以给 Variant 类型的动态数组赋值;也可给 Variant 类型的变量赋值,此时该变量也看作是一个 Variant 类型的动态数组。例如: Dim a() As Variant, b As Varianta = Array( 1, “abc“, 3 ) : b = Array(5, 6)本题中 A、D 选项是把 arr 都定义为 Variant 型的变量,C 选项是把 arr 定义为动态数组,这都可以用Array 函数给 arr 数组赋初值;B
41、选项定义了一个 Variant 型的一维固定数组 arr,Array 函数不能给固定数组赋初值,故 B 选项错误。10.窗体上有名称为 Command1 的命令按钮,名称分别为 Label1、Label2、Label3 的标签。编写如下程序:Private x As IntegerPrivate Sub Command1_Click()Static y As IntegerDim z As Integern=5z=z+ny=y+nx=x+yLabel1 = xLabel2 = yLabel3 = zEnd Sub运行程序,连续 3 次单击命令按钮后,3 个标签中分别显示的是( )。A) 5 5
42、 5 B) 15 10 5 C) 15 15 15 D) 30 15 5(分数:1.00)A.B.C.D. 解析:解析 变量 x 被定义为窗体模块变量,它在整个窗体模块中有效。Click 事件中变量 y 定义为Static,即静态变量,它的值在每调用过程时都会保留上次的值。每次单击按钮标签中显示的值即x、y、z 的值是:第次,n=5,z=z+n=0+5=5,y=y+n=0+5=5,x=x+y=0+5=5;第二次,n=5,z=z+n=0+5=5,y=y+n=5+5=10,x=x+y=5+10=15;第三次,n=5,z=z+n=0+5=5,y=y+n=10+5=15,x=x+y=15+15=30;
43、因此 3 次单击命令按钮后,3 个标签中分别显示的是 30 15 5。11.若要使文本框能够输入多行文本,应该设置的属性是( )。A) MultiLine B) WordWrap C) ScrollBars D) AutoSize(分数:1.00)A. B.C.D.解析:解析 文本框控件的 MultiLine 属性如果设置为 False,则在文本框中只能输入单行文本;当设置为 True 时,可以使用多行文本,即在文本框中输入或输出文本时可以换行,并在下一行接着输入或输出。12.下面关于文件叙述中错误的是( )。A) VB 数据文件需要先打开,再进行处理B) 随机文件每个记录的长度是固定的C)
44、不论是顺序文件还是随机文件,都是数据文件D) 顺序文件的记录是顺序存放的,可以按记录号直接访问某个记录(分数:1.00)A.B.C.D. 解析:解析 顺序文件的记录是顺序存放的,先写入的记录存放在文件的最前面,后写入的依次往后面存放,最后写入的记录放在文件的最后面。如果访问某条记录,要先访问前面的记录,才能访问后面的记录,不能按记录号直接访问。故 D 选项错误。13.下列不属于结构化分析的常用工具的是( )。A) 数据流图 B) 流程图C) 数据字典 D) 判定树和判定表(分数:1.00)A.B. C.D.解析:解析 结构化分析的常用工具有数据流图、数据字典、判定树和判定表。而 PAD 流程图
45、是常见的过程设计工具中的图形设计。本题答案为 B)。14.编写如下程序:Private Sub Command1_Click()Dim i As Integer, j As Integern = InputBox( “输入一个大于 1 的正整数“ )For i = 2 To nFor j = 2 To Sqr(i)If i Mod j = 0 Then Exit ForNext jIf j Sqr(i) Then Print iNext iEnd Sub该程序的功能是( )。A) 判断 n 是否为素数 B) 输出 n 以内所有的奇数C) 输出 n 以内所有的偶数 D) 输出 n 以内所有的素数
46、(分数:1.00)A.B.C.D. 解析:解析 假设输入 2、4、9 进行验证,输入 2 时程序会输出 2,输入 4 时,程序会输出 2、3,可见程序不是判断 n 是否为素数,所以 A 不对。由前面验证可知,程序也不是输出 n 以内的所以奇数或偶数,所以 B、C 也不对。如果输入 9 时,程序会输出 2、3、5、7,说明程序是输出 n 以内的所有素数,所以 D正确。15.窗体上有一个名称为 VScroll1 的垂直滚动条,要求程序运行时,滚动块的初始位置在最下端,应该使VScroll1. Value 的值等于( )。A) VScroll1. LargeChange B) VSeroll1. S
47、mallChangeC) VScroll1. Max D) VScroll1. Min(分数:1.00)A.B.C. D.解析:解析 滚动条的 Value 属性表示滚动框在滚动条上的当前位置,默认值为 0,即在滚动条的左端或顶端,如果 Value 的值等于 Max 属性的值时,则滚动框在滚动条的最右端或底端。16.以下关于 VB 特点的叙述中,错误的是( )。A) VB 中一个对象可有多个事件过程B) VB 应用程序能以编译方式运行C) VB 应用程序从 Form_Load 事件过程开始执行D) 在 VB 应用程序中往往通过引发某个事件导敛对对象的操作(分数:1.00)A.B.C. D.解析:
48、解析 VB 应用程序不一定从 From_Load 事件开始执行,它是由工程中启动对象决定先从哪儿开始执行。故 C 选项错误。17.命令按钮 Command1 的事件过程如下:Private Sub Command1_Click()Dim art(5, 5) As IntegerDim i As Integer, j As IntegerFor i = 1 To 4For j = 2 To 4arr(i, j) =i+jNext jNext iPrint arr(1, 3) + arr(3, 4)End Sub执行上述过程,输出结果是( )。A) 6 B) 7 C) 11 D) 12(分数:1.00)A.B.C. D.解析:解析 当用 Dim 语句定义数组时,该语句把数组中的全部元素都初始化为 0,而把字符串数组中的全部元素都初始化为空字符串。程序中利用 For