1、VB 笔试-试卷 7 及答案解析(总分:94.00,做题时间:90 分钟)一、选择题(总题数:36,分数:72.00)1.选择题()下列各题 A、B、C、D 四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上。(分数:2.00)_2.索引属于( )。(分数:2.00)A.模式B.内模式C.外模式D.概念模式3.下列关于关系运算的叙述中正确的是( )。(分数:2.00)A.投影、选择、连接从二维表的行的方向来进行运算B.并、交、差从二维表的列的方向来进行运算C.投影、选择、连接从二维表的列的方向来进行运算D.以上三种说法都不对4.下列不能打开菜单编辑器的操作是( )。(分数:2
2、.00)A.按“Ctrl+E“组合键B.单击工具栏中的“菜单编辑器”按钮C.执行“工具”菜单中的“菜单编辑器”命令D.按“Shift+Ah+M“组合键5.不能脱离控件(包括客体)而独立存在的过程是( )。(分数:2.00)A.事件过程B.通用过程C.Sub 过程D.函数过程6.在窗体上建立通用对话框需要添加的控件是( )。(分数:2.00)A.Data 控件B.From 控件C.CommonDialog 控件D.VBComboBox 控件7.在 Visual Basic 中,要将一个窗体加载到内存进行预处理但不显示,应使用的语句是( )。(分数:2.00)A.LoadB.ShowC.HideD
3、.Unload8.执行如下两条语句后,窗体上显示的是( )。 a=98596 Print Format(a,“$00,0000”)(分数:2.00)A.0,00986B.$986C.986D.009869.下面循环语句巾在任何情况下都至少执行一次循环体的是( )。(分数:2.00)A.Do While 循环体 LoopB.While 循环体 WendC.Do 循环体 LoopD.Do Until 循环体 UntilLoop10.执行 x$一 InputBox(“请输人 x 的值”)时,在弹出的对话框巾输入 123,在列表框 Listl 中选中一个列表项(数据为 456),使结果为 123456
4、 的语句是( )。(分数:2.00)A.y=x$+List1List(0)B.y=x$+List1List(1)C.Y=Val(x$)+Val(List1List(0)D.y=Val(x$)Val(List1List(1)11.设有两个串 p 和 q,求 q 在 p 中首次出现位置的运算称为( )。(分数:2.00)A.连接B.模式匹配C.求子串D.求串长12.在设计阶段,当双击窗体上的某个控件时,所打开的窗口是( )。(分数:2.00)A.工程资源管理器窗口B.工具箱窗口C.代码窗口D.属性窗口13.下面的控件可作为其他控件容器的是( )。(分数:2.00)A.PictureBox 和 Da
5、taB.Frame 和 ImageC.PictureBox 和 FramcD.Image 和 Data14.下列说法错误的是( )。(分数:2.00)A.窗体文件的扩展名为“frm”B.一个窗体对应一个窗体文件C.Visual Basic 中的一个工程只包含一个窗体D.Visual Basic 中一个工程最多可以包含 255 个窗体15.要设置窗体为固定对话框,并包含控制菜单栏和标题栏,但没有最大化和最小化按钮,设置的操作是( )。(分数:2.00)A.设置 BorderStyle 的值为 Fixed ToolWindowB.设置 Borderstyle 的值为 Sizable ToolWin
6、dowC.设置 Borderstyle 的值为 Fixed DialogD.设置 Borderstyle 的值为 Sizable16.把窗体的 KeyPreview 属性设置为 Frue,然后编写如下事件过程: Private Sub Form Key:Press(KevAscii As Integer) Dim ch As String ch=Chr(KeyAscii) KeyAscii=Asc(UCase(ch) Print Chr(KeyAscii+2) End Sub 程序运行后,按键盘上的“A”键,则在窗体上显示的内容是( )。(分数:2.00)A.AB.BC.CD.D17.如果在程
7、序中要将 a 定义为静态变量,且为整型数,则应使用的语句是( )。(分数:2.00)A.Redim a As IntegerB.Static a As IntegerC.Public a As IntegerD.Dim a As Integer18.用 InputBox 函数设计的对话框,其功能是( )。(分数:2.00)A.只能接收用户输入的数据但不会返回任何信息B.能接收用户输入的数据,并能返回用户输入的信息C.既能用于接收用户输入的信息。义能用于输出信息D.专门用于输出信息19.假定有如下的 Sub 过程:Sub S(X As Single,Y As Single) t=X x=ty y
8、=t Mod YEnd Sub 在窗体上画一个命令按钮,然后编写如下事件过程:Private Sub Commandl Click() Dim a AS Single Dim b AS Singlea=3 b:=4 S(a,b) Print a,b End Sub 程序运行后,单击命令按钮,输出结果为( )。(分数:2.00)A.5 4B.1 1C.125 4D.125 120.设 a=“Visual Basic”,下面使 b=“Basic”的语句是( )。(分数:2.00)A.b=Left(a,8,12)B.b=Mid(a,85)C.b=Rigth(a,5,5)D.b=Left(a,8,5)
9、21.在窗体上画一个名称为 Labell、标题为“Visual Basic 考试”的标签,两个名称分别为 Commandl 和Command2、标题分别为“开始”和“停止”的命令按钮,然后画一个名称为 Timerl 的计时器控件,并把其 Interval 属性设置为 500如图所示。编写如下程序: (分数:2.00)A.标签的移动方向为自右向左B.单击“停止”按钮后再单击“开始”按钮,标签从停止的位置继续移动C.当标签全部移出窗体后,将从窗体的另一端出现并重新移动D.标签按指定的时间间隔移动22.当在滚动条内拖动滚动块时触发( )。AKeyUp 事件 B。KeyPress 事件 CScroll
10、 事件 DChange事件 22下面程序的输出结果是( )。Private Sub Commandl Click() Ch$=“ABCDEF”End SubPrivate Sub proc(ch As String) S=“ For k=Len(ch)To 1 Step-l s=sMid(ch,k,1) Next k ch=SEnd Sub(分数:2.00)A.ABCDEFB.FEDCBAC.AD.F23.执行下列程序段后,输出的结果是( )。For kl=0 To 4 y=20 For k2=0 To 3 Y=10 For k3=0 To 2 y=Y+10 Next k3 Next k2Ne
11、xt k1Print y(分数:2.00)A.90B.60C.40D.1024.在窗体上画两个文本框(其 Name 属性分别为 Textl 和 Text2)和一个命令按钮(其 Name 属性为 Commandl),然后编写如下事件过程: Private Sub Commandl Click() x=0 Do While XA.1 和 0B.2 和 72C.3 和 50D.4 和 16825.用下面语句定义的数组的元素个数是( )。 Dim A(-3 To 5)As Integer(分数:2.00)A.6B.7C.8D.926.若在某窗体模块中有如下事件过程: Private Sub Comma
12、ndl Click(Index As Integer) End Sub 则以下叙述中正确的是( )。(分数:2.00)A.此事件过程与不带参数的事件过程没有区别B.有一个名称为 Commandl 的窗体,单击此窗体则执行此事件过程C.有一个名称为 Commandl 的控件数组,数组中有多个不同类型控件D.有一个名称为 Commandl 的控件数组,数组中有多个相同类型控件27.下列程序段的执行结果为( )。 a=1 b=0 Select Case a Case 1 Select Case b Case 0 Print“* *0* *” Case 1 Print“* *1* *” End Sel
13、ect Case 2 Print“* *2* *” End Select(分数:2.00)A.* *0* *B.* * 1* *C.* *2*D.028.没有数组定义语句:Dim a(5)As Integer,Listl 为列表框控件。下列给数组元素赋值的语句错误的是( )。(分数:2.00)A.a(3)=3B.a(3)=InputBox(“input data”)C.a(3)=ListlListIndexD.a=Array(1,2,3,4,5,6)29.在窗体上画一个名称为 Textl 的文奉框和一个名称为 Commandl 的命令按钮,然后编写如下事件过程: Private Sub Com
14、Inandl Click() Dim arrayl(10,10)As Integer Dim ij As Integer For i=1 TO 3 For j=2 To 4 arrayl(i,j)=i+j Next j Next i TextlText=arrayl(2,3)+arrayl(3,4) End Sub 程序运行后,单击命令按钮。在文本框中显示的值是( )。(分数:2.00)A.12B.13C.14D.1530.如果一个工程含有多个窗体及标准模块,则以下叙述中错误的是( )。(分数:2.00)A.任何时刻最多只有一个窗体是活动窗体B.不能把标准模块设置为启动模块C.用 Hide 方
15、法只是隐藏一个窗体,不能从内存中清除该窗体D.如果工程中含有 Sub Main 过程,则程序一定首先执行该过程31.下列程序的执行结果为( )。 Private Sub Commandl Click() Dim X As Integer,Y As Integer x=1 2:y=20 Call Value(x,y) Print x:Y End Sub Private Sub Value(ByVal m As Integer,ByVal n As Integer) m=m*2:n=n-5 Print m:n End Sub(分数:2.00)A.20 12 20 15B.12 20 12 25C.
16、24 15 12 20D.24 12 12 1532.在窗体上画一个通用对话框,其 Name 属性为 Cont,再画一个命令按钮,Name 属性为 Commandl,然后编写如下事件过程: Private Sub Commandl Click()ContFileName=“”ContFlags=vbOFNFileMustExist ContFilter=“All Files 丨*”ContFilterlndex=3 ContDialogTitle=“Open File”CO ntAction=1 If ContFileName=“”Then MsgBox“No file selected” E
17、lse Open ContFileName For Input As#1 Do While Not EOF(1) Input#1,b$ Print b$ Loop End IfEnd Sub 以下各选项,对上述事件过程描述错误的是( )。(分数:2.00)A.该事件过程用来建立一个 Open 对话框,可以在这个对话框中选择要打开的文件B.选择后单击“打开”按钮,所选择的文件名即作为对话框的 FileName 属性值C.Open 对话框不仅仅用来选择一个文件,还可以打开、显示文件D.过程中的”ContAction=1”用来建立 Open 对话框,它与 ContShowOpen 等价33.以下叙述
18、中错误的是( )。(分数:2.00)A.在 KeyUp 和 KeyDown 事件过程巾,从键盘上输入 A 或 a 被视作相同的字母(即具有相同的 KeyCode)B.在 KeyUp 和 KeyDown 事件过程中,将键盘上的“1”和右侧小键盘上的“1”视作不同的数字(具有不同的 KeyCode)C.KeyPress 事件中不能识别键盘上某个键的按下与释放D.KeyPress 事件中可以识别键盘上某个键的按下与释放34.建立一个新的标准模块,应该选择( )下的“添加模块”命令。(分数:2.00)A.“工程”菜单B.“文件”菜单C.“工具”菜单D.“编辑”菜单35.以下能判断是否到达文件尾的函数是
19、( )。(分数:2.00)A.BOFB.LOCC.LOFD.EOF36.下面循环语句巾在任何情况下都至少执行一次循环体的是( )。(分数:2.00)A.Do While 循环体 LoopB.While 循环体 WendC.Do 循环体 LoopD.Do Until 循环体 UntilLoop二、填空题(总题数:11,分数:22.00)37.填空题(每空)请将每一个空的正确答案写在答题卡上。注意:以命令关键字填空的必须拼写完整。(分数:2.00)_38.在程序设计阶段应该采取 1 和逐步求精的方法,把一个模块的功能逐步分解,细化为一系列具体的步骤,继而用某种程序设计语言写成程序。(分数:2.00
20、)填空项 1:_39.二分法查找仅限于这样的表:表中的数据元素必须有序,其存储结构必须是 1 。(分数:2.00)填空项 1:_40.在面向对象方法中, 1 描述的是具有相似属性与操作的一组对象。(分数:2.00)填空项 1:_41.常用的软件结构设计工具是结构图(SC),也称程序结构图。其中,用矩形表示 1 ,用带空心圆的箭头表示传递的是数据。(分数:2.00)填空项 1:_42.数据库系统其内部分为三级模式,即概念模式、内模式和外模式。其中, 1 是用户的数据视图,也就是用户所见到的数据模式。(分数:2.00)填空项 1:_43.Visual Basic 对象可以分为两类,分别为 1 和
21、2 。(分数:2.00)填空项 1:_填空项 1:_44.Visual Basic 对象可以分为两类,分别为 1 和 2 。(分数:2.00)填空项 1:_填空项 1:_45.下面的程序的作用是利用随机函数产生 10 个 100-300(不包含 300)之间的随机整数,打印其中是 7 的倍数的数,并求它们的总和,请填空。 Sub TOF() Randomize Dim S As Double Dim a(10)As Integer For i=0 To 9 Next For i=0 To 9 If Then Ptint a(i) S=s+a(i) Next i Print Print“S=”:
22、S End Sub(分数:2.00)填空项 1:_46.在窗体上画一个通用对话框,其名称为 CommonDialogl,然后画一个命令按钮,并编写如下事件过程:Private Sub Commandl Click() CommonDialoglFilter=“All Files(*)丨*丨 Text Files” _“(*txt)丨*txt 丨 Batch Files(*bat)丨*bat” CommonDialoglFiherIndex=1 CommonDialoglShowOpen MsgBox CommonDialoglFileName End Sub 程序运行后,单击命令按钮,将显示一
23、个“打开”对话框,此时在“文件类型”框中显示的是 1 ,如果在对话框中选择 d 盘 temp 目录卜的 teltxt 文件,然后单击“确定”按钮,则在 MsgBox 信息框中显示的提示信息是 2。(分数:2.00)填空项 1:_填空项 1:_47.设有以下函数过程: Function fun(m As Integer)As Integer Dim k As Integer,sum As Integer sum=0 For k=m To 1 Step-2 sum=sum+k Next k fun=sum End Function 菪在程序中用语句 S=fun(10)凋用此函数,则 s 的值为 1
24、。(分数:2.00)填空项 1:_VB 笔试-试卷 7 答案解析(总分:94.00,做题时间:90 分钟)一、选择题(总题数:36,分数:72.00)1.选择题()下列各题 A、B、C、D 四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上。(分数:2.00)_解析:2.索引属于( )。(分数:2.00)A.模式B.内模式 C.外模式D.概念模式解析:解析:建立索引是加快查询速度的有效手段,这与索引按什么方式组织有关,它建立在数据库表的基础上,属于内模式。3.下列关于关系运算的叙述中正确的是( )。(分数:2.00)A.投影、选择、连接从二维表的行的方向来进行运算B.并、交、
25、差从二维表的列的方向来进行运算C.投影、选择、连接从二维表的列的方向来进行运算 D.以上三种说法都不对解析:解析:在关系模型的数据语言中,一般除了运用常规的集合运算(并、交、差、笛卡尔积等)外,还定义了一些专门的关系运算,如投影、选择、连接等。前者是将关系(即二维表)看成是元组的集合,这些运算主要是从二维表的行的方向来进行的;后者主要是从二维表的列的方向来进行的。因此,选项 A 与选项 B 的说法都是错误的而选项 C 的说法正确。4.下列不能打开菜单编辑器的操作是( )。(分数:2.00)A.按“Ctrl+E“组合键B.单击工具栏中的“菜单编辑器”按钮C.执行“工具”菜单中的“菜单编辑器”命令
26、D.按“Shift+Ah+M“组合键 解析:解析:本题考查 VISHal Basic 集成开发环境的使用,只用快捷键“shifl 斗 A11+M”不能打开菜单编辑器。5.不能脱离控件(包括客体)而独立存在的过程是( )。(分数:2.00)A.事件过程 B.通用过程C.Sub 过程D.函数过程解析:解析:Visual Basic 对象具有属性、方法和事件。属性是描述对象的数据;方法告诉对象应做的事情;事件是对象所产生的事情,事件发生时可以编写代码进行处理。Visual Basic 的窗体和控件是具有自己的属性、方法和事件的对象。可以把属性看做一个对象的性质,把方法看做对象的动作,把事件看做对象的
27、响应。由此可以看出,事件过程是属于对象的。不能独立存在。6.在窗体上建立通用对话框需要添加的控件是( )。(分数:2.00)A.Data 控件B.From 控件C.CommonDialog 控件 D.VBComboBox 控件解析:解析:CommonDialog 即为通用对话框控件可设定不同的参数,有多种不同类型。CommonDialog控件提供一组标准的操作对话框进行诸如打开和保存文件,设置打印选项,以及选择颜色和字体等操作每种不同的对话框需要设置不同的属性。如果用户需要建立一个通用对话框,则需要先添加commonDialog 控件。7.在 Visual Basic 中,要将一个窗体加载到内
28、存进行预处理但不显示,应使用的语句是( )。(分数:2.00)A.Load B.ShowC.HideD.Unload解析:解析:Visklal Basic 中,Load 语句的功能是将一个窗体加载到内存进行预处理,但不显示。8.执行如下两条语句后,窗体上显示的是( )。 a=98596 Print Format(a,“$00,0000”)(分数:2.00)A.0,00986B.$986C.986D.00986 解析:解析:F0rmat$(数值表达式、格式字符串)该函数的功能是:按“格式字符串”指令的格式输出“数值表达式”的值。本题将 a 按照“$000000的格式输出结果为:“$000986”
29、。9.下面循环语句巾在任何情况下都至少执行一次循环体的是( )。(分数:2.00)A.Do While 循环体 LoopB.While 循环体 WendC.Do 循环体 Loop D.Do Until 循环体 UntilLoop解析:解析:选项 A、B、D 当不满足时,循环体不执行。只有选项 C 首先执行循环体,然后根据其中的条件来判断是否终止。所以在任何情况下都至少执行一次。10.执行 x$一 InputBox(“请输人 x 的值”)时,在弹出的对话框巾输入 123,在列表框 Listl 中选中一个列表项(数据为 456),使结果为 123456 的语句是( )。(分数:2.00)A.y=x
30、$+List1List(0) B.y=x$+List1List(1)C.Y=Val(x$)+Val(List1List(0)D.y=Val(x$)Val(List1List(1)解析:11.设有两个串 p 和 q,求 q 在 p 中首次出现位置的运算称为( )。(分数:2.00)A.连接B.模式匹配 C.求子串D.求串长解析:解析:字串的定位操作通常称为串的模式匹配,是各种串处理系统中最重要的操作之一。12.在设计阶段,当双击窗体上的某个控件时,所打开的窗口是( )。(分数:2.00)A.工程资源管理器窗口B.工具箱窗口C.代码窗口 D.属性窗口解析:解析:双击窗体上的某个控件,打开代码窗口,
31、并定位到该控件的相关方法。13.下面的控件可作为其他控件容器的是( )。(分数:2.00)A.PictureBox 和 DataB.Frame 和 ImageC.PictureBox 和 Framc D.Image 和 Data解析:解析:Visual Basic 控件中,PitureBox 和 Frame 可以作为其他控件的容器,而 Data 和 Image 则不能。14.下列说法错误的是( )。(分数:2.00)A.窗体文件的扩展名为“frm”B.一个窗体对应一个窗体文件C.Visual Basic 中的一个工程只包含一个窗体 D.Visual Basic 中一个工程最多可以包含 255
32、个窗体解析:解析:V1sunl Basic 中的一个工程可包含一个或者多个窗体,但最多只能是 255 个。15.要设置窗体为固定对话框,并包含控制菜单栏和标题栏,但没有最大化和最小化按钮,设置的操作是( )。(分数:2.00)A.设置 BorderStyle 的值为 Fixed ToolWindowB.设置 Borderstyle 的值为 Sizable ToolWindowC.设置 Borderstyle 的值为 Fixed Dialog D.设置 Borderstyle 的值为 Sizable解析:16.把窗体的 KeyPreview 属性设置为 Frue,然后编写如下事件过程: Priv
33、ate Sub Form Key:Press(KevAscii As Integer) Dim ch As String ch=Chr(KeyAscii) KeyAscii=Asc(UCase(ch) Print Chr(KeyAscii+2) End Sub 程序运行后,按键盘上的“A”键,则在窗体上显示的内容是( )。(分数:2.00)A.AB.BC.C D.D解析:解析:本题考查了 3 个系统函数:Chr(),Asc(),UCase()。它们的功能分别是将 ASCII 码值转换为字符;将字符转化为 AscII 码值;将字符转化为大写字符串。KeyPreview 属性返回或设置一个值,以决
34、定是否在控件的键盘事件之前激活窗体的键盘事件。键盘事件有 KeyD0wn、Keyup 和 KeyPress,主要应用于 Form 对象。本题的程序执行时,当按下“A”时,则“A”的 AscII 码值传给函数体,并转换为字符赋给变量 ch,再将 ch(即“A”)的 AsCII 值赋值给 KeyAscii,最后将 KeyAscii 值加 2 并转化为字符打印输出,即结果为字母“C”。17.如果在程序中要将 a 定义为静态变量,且为整型数,则应使用的语句是( )。(分数:2.00)A.Redim a As IntegerB.Static a As Integer C.Public a As Inte
35、gerD.Dim a As Integer解析:解析:Visual Basic 中定义一个静态变量的语法为:static 变量名 As 变量类型。故选项 B 正确。此外,在 Visual Basic 中,static 类型的变量不能在标准模块的声明部分定义,为了使过程中所有的局部变量为静态变量,可在过程头起始处加上 Staftc 关键字。使过程中的所有局部变量都变为静态变量。18.用 InputBox 函数设计的对话框,其功能是( )。(分数:2.00)A.只能接收用户输入的数据但不会返回任何信息B.能接收用户输入的数据,并能返回用户输入的信息 C.既能用于接收用户输入的信息。义能用于输出信息
36、D.专门用于输出信息解析:解析:InputBox 函数用来显示一个输入框,并提示用户在文本榧中输入文本、数字或选中某个单元格区域,当按下确定按钮后返回包含文本框内容的字符串。19.假定有如下的 Sub 过程:Sub S(X As Single,Y As Single) t=X x=ty y=t Mod YEnd Sub 在窗体上画一个命令按钮,然后编写如下事件过程:Private Sub Commandl Click() Dim a AS Single Dim b AS Singlea=3 b:=4 S(a,b) Print a,b End Sub 程序运行后,单击命令按钮,输出结果为( )。
37、(分数:2.00)A.5 4B.1 1C.125 4D.125 1 解析:解析:本题定义了一个函数 Sub,默认为地址传递参数,首先对第一个参数进行除操作,第二个进行取余操作,调用后变量改变。结果为选项 D。20.设 a=“Visual Basic”,下面使 b=“Basic”的语句是( )。(分数:2.00)A.b=Left(a,8,12)B.b=Mid(a,85) C.b=Rigth(a,5,5)D.b=Left(a,8,5)解析:解析:本题考查字符串函数。Left(字符串,n):取字符串左部的 n 个字符;Mid(字符串,p,n):从位置 p 开始取字符串的 n 个字符;Right(字符
38、串,n):取字符串右部的 n 个字符。分析题中的 4 个选项可知正确答案为选项 B。21.在窗体上画一个名称为 Labell、标题为“Visual Basic 考试”的标签,两个名称分别为 Commandl 和Command2、标题分别为“开始”和“停止”的命令按钮,然后画一个名称为 Timerl 的计时器控件,并把其 Interval 属性设置为 500如图所示。编写如下程序: (分数:2.00)A.标签的移动方向为自右向左 B.单击“停止”按钮后再单击“开始”按钮,标签从停止的位置继续移动C.当标签全部移出窗体后,将从窗体的另一端出现并重新移动D.标签按指定的时间间隔移动解析:22.当在滚
39、动条内拖动滚动块时触发( )。AKeyUp 事件 B。KeyPress 事件 CScroll 事件 DChange事件 22下面程序的输出结果是( )。Private Sub Commandl Click() Ch$=“ABCDEF”End SubPrivate Sub proc(ch As String) S=“ For k=Len(ch)To 1 Step-l s=sMid(ch,k,1) Next k ch=SEnd Sub(分数:2.00)A.ABCDEFB.FEDCBAC.A D.F解析:解析:本题考查 Visual Basic 中滚动条控件的特征,当在滚动条内拖动滚动块时触发 se
40、roll 事件。当接下键盘上的某个键时,将触发 KeyPress 事件。23.执行下列程序段后,输出的结果是( )。For kl=0 To 4 y=20 For k2=0 To 3 Y=10 For k3=0 To 2 y=Y+10 Next k3 Next k2Next k1Print y(分数:2.00)A.90B.60C.40 D.10解析:解析:程序是三重循环,但是最外层循环每次对 y 初始化为 20。第二层每次对其初始化为 10,因此外两层循环不能改变 y 的值,考生只需注意内层循环即可得出答案为 40。24.在窗体上画两个文本框(其 Name 属性分别为 Textl 和 Text2
41、)和一个命令按钮(其 Name 属性为 Commandl),然后编写如下事件过程: Private Sub Commandl Click() x=0 Do While XA.1 和 0B.2 和 72 C.3 和 50D.4 和 168解析:解析:程序先进行 Do while 循环,然后将求得的 n 和 x 的值转换为字符串输入到 Textl 和 Text2中,结果为 2 和 72。25.用下面语句定义的数组的元素个数是( )。 Dim A(-3 To 5)As Integer(分数:2.00)A.6B.7C.8D.9 解析:解析:本题中的数组定义从-3 到 5,一共有“-3、-2、-1、0、
42、1、2、3、4、5”九个元素。26.若在某窗体模块中有如下事件过程: Private Sub Commandl Click(Index As Integer) End Sub 则以下叙述中正确的是( )。(分数:2.00)A.此事件过程与不带参数的事件过程没有区别B.有一个名称为 Commandl 的窗体,单击此窗体则执行此事件过程C.有一个名称为 Commandl 的控件数组,数组中有多个不同类型控件D.有一个名称为 Commandl 的控件数组,数组中有多个相同类型控件 解析:27.下列程序段的执行结果为( )。 a=1 b=0 Select Case a Case 1 Select Ca
43、se b Case 0 Print“* *0* *” Case 1 Print“* *1* *” End Select Case 2 Print“* *2* *” End Select(分数:2.00)A.* *0* * B.* * 1* *C.* *2*D.0解析:解析:程序为嵌套的 Select 语句。分析程序可知,程序只执行了“Prim”*0*”语句,结果为选项 A。28.没有数组定义语句:Dim a(5)As Integer,Listl 为列表框控件。下列给数组元素赋值的语句错误的是( )。(分数:2.00)A.a(3)=3B.a(3)=InputBox(“input data”)C.
44、a(3)=ListlListIndexD.a=Array(1,2,3,4,5,6) 解析:解析:选项 D 将 6 个元素赋给长度为 5 的数组显然是错误的。29.在窗体上画一个名称为 Textl 的文奉框和一个名称为 Commandl 的命令按钮,然后编写如下事件过程: Private Sub ComInandl Click() Dim arrayl(10,10)As Integer Dim ij As Integer For i=1 TO 3 For j=2 To 4 arrayl(i,j)=i+j Next j Next i TextlText=arrayl(2,3)+arrayl(3,4
45、) End Sub 程序运行后,单击命令按钮。在文本框中显示的值是( )。(分数:2.00)A.12 B.13C.14D.15解析:解析:程序中二重循环对数组 arrayl 赋值 i+j,然后在 Textl 中显示,结果为 12。30.如果一个工程含有多个窗体及标准模块,则以下叙述中错误的是( )。(分数:2.00)A.任何时刻最多只有一个窗体是活动窗体B.不能把标准模块设置为启动模块C.用 Hide 方法只是隐藏一个窗体,不能从内存中清除该窗体D.如果工程中含有 Sub Main 过程,则程序一定首先执行该过程 解析:解析:Visual Basic 编程环境规定,任何时刻最多只有一个窗体是活
46、动窗体,同时不能把标准模块设置为启动模块。用 Hide 方法只是隐藏一个窗体,不能从内存中清除该窗体。如果工程中含有SubMain 过程,则程序也不一定首先执行该过程。31.下列程序的执行结果为( )。 Private Sub Commandl Click() Dim X As Integer,Y As Integer x=1 2:y=20 Call Value(x,y) Print x:Y End Sub Private Sub Value(ByVal m As Integer,ByVal n As Integer) m=m*2:n=n-5 Print m:n End Sub(分数:2.00
47、)A.20 12 20 15B.12 20 12 25C.24 15 12 20 D.24 12 12 15解析:解析:本题主要考查自定义过程的参数传递。在 Visual Basi c:中,参数缺省是按地址传递的,也就是使过程按照变量的内存地址去访问实际变量的内容。这样,将变量传递给函数时,通过函数可永远改变该变量值。如果想改变传递方式可以通过在变量定义前加关键字 ByRef 或 ByVal。ByRef 为默认值,按地址传递,ByVal 按照值传递,函数调用后不改变变量值。 本题 Value 函数两个参数都是值传递参数的值只会在函数里面变化,调用结束后,参数的值没有最终改变,故选项 C 正确。32.在窗体上画一个通用对话框,其 Name 属性为 Cont,再画一个命令按钮,Name 属性为 Commandl,然后编写如下事件过程: Private Sub Commandl Click()ContFileName=“”ContFlags=vbOFNFileMustExist ContFilter=“All Files 丨*”ContFilterlndex=3 ContDialogTitle=“Open File”CO ntAction=1 If ContFileName=“”Then MsgBox“No file