1、二级 VISUAL+BASIC 笔试-404 及答案解析(总分:98.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.在待排序的元素序列基本有序的前提下,效率最高的排序方法是( )。A) 冒泡排序 B) 选择排序 C) 快速排序 D) 归并排序(分数:2.00)A.B.C.D.2.下列叙述中正确的是( )。A) 算法的效率只与问题的规模有关,而与数据的存储结构无关B) 算法的时间复杂度是指执行算法所需要的计算工作量C) 数据的逻辑结构与存储结构是一一对应的D) 算法的时间复杂度与空间复杂度一定相关(分数:2.00)A.B.C.D.3.以下叙述中,不属于面向对象方法的
2、优点的是( )。A) 可重用性好 B) 与人类习惯的思维方法一致C) 可维护性好 D) 有助于实现自顶向下、逐步求精(分数:2.00)A.B.C.D.4.下列对于软件测试的描述中正确的是( )。A) 软件测试的目的是证明程序是否正确B) 软件测试的目的是使程序运行结果正确C) 软件测试的目的是尽可能多地发现程序中的错误D) 软件测试的目的是使程序符合结构化原则(分数:2.00)A.B.C.D.5.在软件设计中,不属于过程设计工具的是( )。A) PDL(过程设计语言) B) PAD 图C) N-S 图 D) DFD 图(分数:2.00)A.B.C.D.6.下列选项中不属于软件生命周期开发阶段任
3、务的是( )。A) 软件测试 B) 概要设计 C) 软件维护 D) 详细设计(分数:2.00)A.B.C.D.7.关系数据库管理系统所管理的关系是( )。A) 若干个二维表 B) 一个 DBF 文件C) 一个 DBC 文件 D) 若干个 DBC 文件(分数:2.00)A.B.C.D.8.使用视图之前,首先( )。A) 新建一个数据库 B) 新建一个数据库表C) 打开相关的数据库 D) 打开相关的数据表(分数:2.00)A.B.C.D.9.数据库设计的四个阶段是需求分析、概念设计、逻辑设计和( )。A) 编码设计 B) 测试阶段 C) 运行阶段 D) 物理设计(分数:2.00)A.B.C.D.1
4、0.在下列关系运算中,不改变关系表中的属性个数但能减少元组个数的是( )。A) 并 B) 交 C) 投影 D) 笛卡尔乘积(分数:2.00)A.B.C.D.11.Visual Basic 程序设计采用的编程机制是( )。A) 可视化 B) 面向对象 C) 事件驱动 D) 过程结构化(分数:2.00)A.B.C.D.12.工程资源管理器窗口包含的文件类型有( )种。A) 2 B) 3 C) 4 D) 5(分数:2.00)A.B.C.D.13.窗体上有一个列表框和一个文本框,编写如下两个事件过程:Private Sub Form_Load()List1.AddItem“Beijing“List1.
5、AddItem “Tianjin“List1.AddItem”Shanghai”Text1.Text=“”End SubPrivate Sub List1_Db1Click()x=List1.TextPrint x+Text1.TextEnd Sub程序运行后,在文本框中输入“China”,然后双击列表中的“Shanghai”,则输出结果为( )。A) China Beijing B) China TianjingC) China Shanghai D) Shanghai China(分数:2.00)A.B.C.D.14.设用复制、粘贴的方法建立了一个命令按钮数组 Command1,以下对该数
6、组的说法错误的是( )。A) 命令按钮的所有 Caption 属性都是 Command1B) 在代码中访问任意一个命令按钮只需使用名称 Command1C) 命令按钮的大小都相同D) 命令按钮共享相同的事件过程(分数:2.00)A.B.C.D.15.能够获得一个文本框中被选取文本的内容的属性是( )。A) Text B) Length C) SelText D) SelStart(分数:2.00)A.B.C.D.16.如果 A 为整数,且|A|=100,则打印“OK”,否则打印“Error”,表示这个条件的单行格式 If 语句是( )。A) If Int(A)=A And Sqr(A) =10
7、0 Then Print“OK“Else Print “Error“B) If Fix(A)=A And Alos(A) =100 Then Print“OK“Flse Print “Error“C) If Int(A)=A And Sqr(A=100,A=-100) Then Print“OK“Else Print “Error“D) If Fix(A)=A And Abs(A=100,And A=-100)Then Print“OK“Else Print “Error/(分数:2.00)A.B.C.D.17.满足“当 x 的值是偶数时为真,奇数时为假”要求的表达式是( )。A) x Mod
8、 2=0 B) Not x Mod0C) (x/2*2-x)=0 D) Not (x Mod 2)(分数:2.00)A.B.C.D.18.下列语句都是在 Form 中定义的,其中,错误的是( )。A) Public Const A1=2u B) Private Const A2=8C) Public a3 As Integer D) Private a4 As Integer(分数:2.00)A.B.C.D.19.执行如下语句:a=InputBox(“Today”,“Tomorrow”,“Yesterday”,”Day before yesterday”,5)将显示一个对话框,在对话框的输入区
9、中显示的信息是( )。A) Today B) TomorrowC) Yesterday D) Day before yesterday(分数:2.00)A.B.C.D.20.在运行程序时,在文本框中输入新的内容,或在程序代码中改变 Text 的属性值,相应会触发到( )。A) GotFocus 事件 B) Click 事件 C) Change 事件 D) DblClick 事件(分数:2.00)A.B.C.D.21.下列事件过程运行后输出结果是( )。Private Sub Command1_Click()Print Format $(123.456,“#%”)End SubA) 123.46
10、% B) 123.45% C) 123.456% D) 12345.6%(分数:2.00)A.B.C.D.22.以下声明语句中错误的是( )。A) Const Var1:123 B) Dim var2:“ABC”C) Deflnt a-z D) Static Var3 As Integer(分数:2.00)A.B.C.D.23.下列程序运行时输出的结果是( )。Private Sub Form_Click()Dim a()a=Array(“天天向上”,“清华大学”,“天长地久”,“程序设计”)for I=Lbound(a,1) to Ubound(a,1)if ieft(a(I),1)=“天”
11、then print a(I);next IEnd SubA) 天天向上 B) 天天向上天长地久C) 出错信息 D) 天天向上清华大学天长地久程序设计(分数:2.00)A.B.C.D.24.用 InputBox 函数设计的对话框,其功能是( )。A) 能接收用户输入的数据,但不会返回任何信息B) 能接收用户输入的数据,并能返回用户输入的信息C) 既能用于接收用户输入的信息,又能用于输出信息D) 专门用于输出信息(分数:2.00)A.B.C.D.25.下面程序运行后,输出结果是( )。Private Sub mysub(b()As Integer,Optional ByVal n As Inte
12、ger=2)For I=1 to 4b(I)=n*INext IEnd SubPrivate Sub Command1_Click()Dim a(1 to 4)As Integer,I As IntegerCall mysub(a(),5)Mysub a()For I=1 to 4Print a(I);NextEnd SubA) 5 10 15 20 B) 2 4 6 8 C) 出错 D) 0 0 0 0(分数:2.00)A.B.C.D.26.有如下程序:Private Sub Command1_Click()Dim a As SingleDim b As Singlea=5: b=4Call
13、 Sub1(a,b)End SubSub Sub1(x As Single,y As Single)t=XX=t/yy=t Mod yEnd Sub在运行上述程序后,a 和 b 的值分别为( )。A) 0 0 B) 1 1 C) 2 2 D) 1 2(分数:2.00)A.B.C.D.27.下列程序段的执行结果为( )。n:0For i=1 To 3For j=5 To Step-1n=n+1Next j,iPrint n:j;iA) 12 0 4 B) 15 0 4 C) 12 3 1 D) 15 3 1(分数:2.00)A.B.C.D.28.在窗体上画一个名称为 Command1 的命令按钮
14、,然后编写如下事件过程:Private Sub Command1_Click()a $=“VisualBasic“Print String(3,a$)End Sub程序运行后,单击命令按钮,在窗体上显示的内容是( )。A) VVV B) Vis C) siC D) 11(分数:2.00)A.B.C.D.29.下面程序运行后,单击命令按钮,输出的结果是( )。Private Sub Command1_Click()Dim a%(1 To 4),b%(2 To 6),i%,str1#, str2#For i=1 To 4a(i)=1NextFor i=2 To 6b(i)=iNextstr1=YA
15、G(A)str2=YAG(B)Print “str1=“; str1; “str2=“: str2End SubFunction YAG(a() As Integer)Dim t#,i%t=1For i=LBound(A) To UBound(A)t=t*a(i)NextYAG=tEnd FunctionA) str1=24 str2=720 B) str1=12 str2=360C) str1=24 str2=180 D) str1=36 str2=720(分数:2.00)A.B.C.D.30.关于 Exit For 的使用说明正确的是( )。A) Exit For 语句可以退出任何类型的循
16、环B) 一个循环中只能有一个这样的语句C) Exit For 表示返回 For 语句去执行D) 一个 For 循环中可以有多条 Exit For 语句(分数:2.00)A.B.C.D.31.以下叙述中错误的是( )。A) 顺序文件中的数据只能按顺序读写B) 对同一个文件,可以用不同的方式和不同的文件号打开C) 执行 Close 语句,可将文件缓冲区中的数据写到文件中D) 随机文件中各记录的长度是随机的(分数:2.00)A.B.C.D.32.要使菜单项 MenuOne 在程序运行时失效,使用的语句是( )。A) MenuOne.Visible=True B) MenuOne.Visible=Fa
17、lseC) MenuOne.Enabled=True D) MenuOne.Enabled=False(分数:2.00)A.B.C.D.33.有以下程序:Option Base 1Dim arr()As IntegerPrivate Sub Form_Click()Dim i As Integer,j As IntegerReDim arr(3,2)For i=1 To 3For j=1 To 2arr(i,j)=i*2+jNext iNext iReDim Preserve arr(3,4)For j=3 To 4arr(3,j)=j+9Next iPrint arr(3,2); arr(3
18、,4)End Sub程序运行后,单击窗体,输出结果为( )。A) 8 13 B) 0 13 C) 7 12 D) 0 0(分数:2.00)A.B.C.D.34.下列能正确产生1,30之间的随机整数的表达式是( )。A) 1+rnd(30) B) 1+30*rnd() C) rnd(1+30) D) int(rnd()*30)+1(分数:2.00)A.B.C.D.35.在窗体上画一个文本框,其名称为 Text1,然后编写如下事件过程:Private Sub Text1_KeyPress(KeyAscii As Integer)Dim str As StringStr=Chr(KeyAscii)K
19、eyAscii=Asc(UCase(str)Text1.Text=String(2, KeyAscii)End Sub程序运行后,如果在键盘上输入字母“b”,则在文本框 Text1 中显示的内容是( )。A) bbb B) BBB C) BB D) bb(分数:2.00)A.B.C.D.二、填空题(总题数:14,分数:28.00)36.按“先进后出”原则组织数据的数据结构是 (1) 。(分数:2.00)填空项 1:_37.数据结构分为线性结构和非线性结构,带链的队列属于 (2) 。(分数:2.00)填空项 1:_38.一棵二叉树第六层(根结点为第一层)的结点数最多为 (3) 个。(分数:2.0
20、0)填空项 1:_39.在两种基本测试方法中, (4) 测试的原则之一是保证所测模块中每一个独立路径至少要执行一次。(分数:2.00)填空项 1:_40.在关系模型中,把数据看成是二维表,每一个二维表称为一个 (5) 。(分数:2.00)填空项 1:_41.设有如下程序:Private Sub Search(a()As Variant,ByVal key As Variant,index%)Dim I%For I=LBound(A) To UBound(A)If key=a(I) ThenExit SubEnd IfNext IIndex=-1End SubPrivate Sub Form_L
21、oad()showDim b() As VariantDim n As Integerb=Array(1,3,5,6,9,11,13,15)Call Search(b,11n)Print nEnd Sub程序运行后,输出结果是 (6) 。(分数:2.00)填空项 1:_42.读下列程序:Private Sub Form_Click()Static x(4) As IntegerFor i=1 To 4x(i)=x(i)+i*3Next iPrintFor i=1 To 4Print “x(“;i;”)=”X(i)Next iEnd Sub该程序在运行了 3 次后,其最终结果是 (7) 。(分数
22、:2.00)填空项 1:_43.程序运行后,利用冒泡法对数组 a 中的数据按从小到大排序。请在空白处填入适当的内容将程序补充完整。Private Sub Form_load()Dim at(To 5)As Integern=5a(1)=20:a(2)=25=a(3)=10:a(4)=40:a(5)=15(8) For Z=1 To n-mIf a(z)a(z+1) Thent=a(z)a(z)=a(z+1)a(Z+1)=tEnd IfNext ZNext mEnd Sub(分数:2.00)填空项 1:_44.如果存在如下过程:Private Function Fun(a() As Intege
23、r)Dim First As Integer, Last As Integer,i As IntegerFirst=LBound(a)Last=UBound(a)Max=a(First)For i=First To LastIf a(i) Max Then Max=a(i)NextFun=MaxEnd Function在窗体上添加一个命令按钮,然后编写如下事件过程:Private Sub Command1_Click()ReDim m(1 To 4)As Integerm(1)=20: m(2)=30: m(3)=50: m(4)=100c=Fun(m)Print CEnd Sub单击命令按钮
24、,其输出结果为 (9) 。(分数:2.00)填空项 1:_45.在窗体上画一个命令按钮和一个文本框,其名称分别为 Command1 和 Text1,然后编定如下事件过程:Private Sub Command1_Click()Dim inData As StringText1.Text:“”Open “d:/myfile.txt“ For (10) As#1Do While (11) Input #1,inDataText1.Text=Text1.Text+inDataLoopClose#1End Sub程序的功能是,打开 D 盘根目录下的文本文件 myfile.txt,读取它的全部内容并显示
25、在文本框中。请填空。(分数:2.00)填空项 1:_46.设 A=2,B=-4,则表达式 3*A5 Or B+80 的值是 (12) 。(分数:2.00)填空项 1:_47.假定在工程文件中有一个标准模块,其中定义了如下记录类型:Type BooksName As String*10TelNum As String*20End Type要求在执行事件过程 Command1_Click 时,在顺序文件 Person.txt 中写入一条记录。将以下程序补充完整。Private Sub Command1_Click()Dim B As Booksopen “c:/person.txt“For out
26、put As#1B.Name=InputBox(“请输入姓名”)B.TeINum=InputBoxt“请输入电话号码“)write#1, (13) close#1End Sub(分数:2.00)填空项 1:_48.若已在窗体中加入一个通用对话框,要求在运行时,通过 ShowOpen 打开对话框时只显示扩展名为.doc的文件,则对通用对话框的 Filter 属性正确的设置是 (14) 。(分数:2.00)填空项 1:_49.在菜单编辑器中建立一个菜单,其主菜单项的名称为 mnuEdit,Visible 属性为 False,程序运行后,如果用鼠标右键单击窗体,则弹出与 mnuEdit 对应的菜单。
27、以下是实现上述功能的程序,请填空。Private Sub Form (15) (Button As Integer,Shift As Integer,X As Single,Y As Single)If Button=2 ThenPopupMenu mnueditEnd IfEnd Sub(分数:2.00)填空项 1:_二级 VISUAL+BASIC 笔试-404 答案解析(总分:98.00,做题时间:90 分钟)一、选择题(总题数:35,分数:70.00)1.在待排序的元素序列基本有序的前提下,效率最高的排序方法是( )。A) 冒泡排序 B) 选择排序 C) 快速排序 D) 归并排序(分数:
28、2.00)A. B.C.D.解析:解析 从平均时间性能而言,快速排序最佳,其所需时间最少,但快速排序在最坏情况下的时间性能不如堆排序和归并排序。当序列中的记录基本有序或元素个数较少时,冒泡排序和简单选择排序为最佳排序方法。2.下列叙述中正确的是( )。A) 算法的效率只与问题的规模有关,而与数据的存储结构无关B) 算法的时间复杂度是指执行算法所需要的计算工作量C) 数据的逻辑结构与存储结构是一一对应的D) 算法的时间复杂度与空间复杂度一定相关(分数:2.00)A.B. C.D.解析:解析 算法的时间复杂度是指算法在计算机内执行时所需时间的度量;与时间复杂度类似,空间复杂度是指算法在计算机内执行
29、时所需存储空间的度量。因此,选项 B)的说法是正确的。3.以下叙述中,不属于面向对象方法的优点的是( )。A) 可重用性好 B) 与人类习惯的思维方法一致C) 可维护性好 D) 有助于实现自顶向下、逐步求精(分数:2.00)A.B.C.D. 解析:解析 面向对象程序设计方法并不强调自顶向下的构造程序,而常常是自底向上的,而自顶向下、逐步求精是结构化程序设计的特点。4.下列对于软件测试的描述中正确的是( )。A) 软件测试的目的是证明程序是否正确B) 软件测试的目的是使程序运行结果正确C) 软件测试的目的是尽可能多地发现程序中的错误D) 软件测试的目的是使程序符合结构化原则(分数:2.00)A.
30、B.C. D.解析:解析 软件测试的目标是在精心控制的环境下执行程序,以发现程序中的错误,给出程序可靠性的鉴定。测试不是为了证明程序是正确的,而是在设想程序有错误的前提下进行的,其目的是设法暴露程序中的错误和缺陷。可见选项 C)的说法正确。5.在软件设计中,不属于过程设计工具的是( )。A) PDL(过程设计语言) B) PAD 图C) N-S 图 D) DFD 图(分数:2.00)A.B.C.D. 解析:解析 数据流图 DFD 是结构化分析方法最主要的一种图形工具,不属于过程设计工具。6.下列选项中不属于软件生命周期开发阶段任务的是( )。A) 软件测试 B) 概要设计 C) 软件维护 D)
31、 详细设计(分数:2.00)A.B.C. D.解析:解析 软件生命周期由软件定义、软件开发和软件维护三个时期组成。软件开发时期是具体设计和实现在前一时期定义的软件,它通常由下面五个阶段组成:概要设计、详细设计、编写代码、组装测试和确认测试。7.关系数据库管理系统所管理的关系是( )。A) 若干个二维表 B) 一个 DBF 文件C) 一个 DBC 文件 D) 若干个 DBC 文件(分数:2.00)A. B.C.D.解析:解析 在 Visual FoxPro 中,一个表就是一个关系,关系数据库管理系统管理的关系就是多个二维表。8.使用视图之前,首先( )。A) 新建一个数据库 B) 新建一个数据库
32、表C) 打开相关的数据库 D) 打开相关的数据表(分数:2.00)A.B.C. D.解析:解析 使用视图之前需要先打开存有视图的相应数据库。9.数据库设计的四个阶段是需求分析、概念设计、逻辑设计和( )。A) 编码设计 B) 测试阶段 C) 运行阶段 D) 物理设计(分数:2.00)A.B.C.D. 解析:解析 数据库的生命周期可以分为两个阶段:一是数据库设计阶段,二是数据库实现阶段。数据库的设计阶段又分为四个子阶段,即需求分析、概念设计、逻辑设计和物理设计。因此,本题的正确答案是 D)。10.在下列关系运算中,不改变关系表中的属性个数但能减少元组个数的是( )。A) 并 B) 交 C) 投影
33、 D) 笛卡尔乘积(分数:2.00)A.B. C.D.解析:解析 本题考查数据库的关系运算。两个关系的并运算是指将第一个关系的元组加到第二个关系中,生成新的关系。因此,并运算不改变关系表中的属性个数,也不能减少元组个数。两个关系的交运算是包含同时出现在第一个和第二个关系中的元组的新关系。因此,交运算不改变关系表中的属性个数,但能减少元组个数。投影是一元关系操作。投影操作选取关系的某些属性,这个操作是对一个关系进行垂直分割,消去某些属性,并重新安排属性的顺序,再删除重复的元组。因此,投影运算既可以减少关系表中的属性个数,也可以减少元组个数。两个关系的笛卡尔乘积会增加属性个数,元组个数不变。11.
34、Visual Basic 程序设计采用的编程机制是( )。A) 可视化 B) 面向对象 C) 事件驱动 D) 过程结构化(分数:2.00)A.B.C. D.解析:解析 可视化是一种程序设计技术,它把烦琐、复杂的工作交由系统完成,从而减轻程序设计人员编写代码的工作量。面向对象是一种程序设计方法,这种方法将数据和代码封装起来成为对象;事件驱动是一种编程机制,它由事件而驱动程序调用通用过程来执行指定的操作;过程结构化则是传统的“面向过程”程序设计语言的编程思想。12.工程资源管理器窗口包含的文件类型有( )种。A) 2 B) 3 C) 4 D) 5(分数:2.00)A.B.C.D. 解析:解析 vb
35、p 工程文件、frm 窗体文件、cls 类模块文件、pag 属性页文件、bas 模块文件,共计 5种。13.窗体上有一个列表框和一个文本框,编写如下两个事件过程:Private Sub Form_Load()List1.AddItem“Beijing“List1.AddItem “Tianjin“List1.AddItem”Shanghai”Text1.Text=“”End SubPrivate Sub List1_Db1Click()x=List1.TextPrint x+Text1.TextEnd Sub程序运行后,在文本框中输入“China”,然后双击列表中的“Shanghai”,则输出
36、结果为( )。A) China Beijing B) China TianjingC) China Shanghai D) Shanghai China(分数:2.00)A.B.C.D. 解析:解析 x 为“Shanghai”,Text1.Text 值为“China”,组合输出为 D)项内容。14.设用复制、粘贴的方法建立了一个命令按钮数组 Command1,以下对该数组的说法错误的是( )。A) 命令按钮的所有 Caption 属性都是 Command1B) 在代码中访问任意一个命令按钮只需使用名称 Command1C) 命令按钮的大小都相同D) 命令按钮共享相同的事件过程(分数:2.00)
37、A.B. C.D.解析:解析 访问控件数组中的一个控件应使用名称加索引,如控件名称(索引值)。15.能够获得一个文本框中被选取文本的内容的属性是( )。A) Text B) Length C) SelText D) SelStart(分数:2.00)A.B.C. D.解析:解析 文本框 Se1Text 属性返回或设置包含当前所选择文本的字符串;如果没有字符被选中,则为零长度字符串(“”)。16.如果 A 为整数,且|A|=100,则打印“OK”,否则打印“Error”,表示这个条件的单行格式 If 语句是( )。A) If Int(A)=A And Sqr(A) =100 Then Print
38、“OK“Else Print “Error“B) If Fix(A)=A And Alos(A) =100 Then Print“OK“Flse Print “Error“C) If Int(A)=A And Sqr(A=100,A=-100) Then Print“OK“Else Print “Error“D) If Fix(A)=A And Abs(A=100,And A=-100)Then Print“OK“Else Print “Error/(分数:2.00)A.B. C.D.解析:解析 此题考查的知识点有两个,一个是 Abs()绝对值函数,另一个是 Fix()函数。Fix 函数是取整
39、数部分函数,当 A=-99.5 时 Fix(A)=-99,两者对比可以知道 A 是否为整数。17.满足“当 x 的值是偶数时为真,奇数时为假”要求的表达式是( )。A) x Mod 2=0 B) Not x Mod0C) (x/2*2-x)=0 D) Not (x Mod 2)(分数:2.00)A.B.C.D. 解析:解析 x 为偶数时对 2 求模值为零,逻辑值为假,取非后为真。18.下列语句都是在 Form 中定义的,其中,错误的是( )。A) Public Const A1=2u B) Private Const A2=8C) Public a3 As Integer D) Private
40、 a4 As Integer(分数:2.00)A. B.C.D.解析:解析 Const 语句用于模块级声明中,只能在包含该声明的模块中使用的常数,不能在过程中使用。19.执行如下语句:a=InputBox(“Today”,“Tomorrow”,“Yesterday”,”Day before yesterday”,5)将显示一个对话框,在对话框的输入区中显示的信息是( )。A) Today B) TomorrowC) Yesterday D) Day before yesterday(分数:2.00)A.B.C. D.解析:解析 InputBox 函数的功能是显示一个对话框,该对话框能接收用户输
41、入的数据。语法格式为InputBox(prompt ,title,default,xpos ,ypos ,helpfile,context)InputBox 函数的语法具有以下几个命令参数。prompt 必要的。作为对话框消息出现的字符串表达式。prompt 的最大长度大约是 1024 个字符,由所用字符的宽度决定。如果 prompt 包含多个行,则可在备行之间用回车符( Chr(13)、换行符(Chr(10)或回车换行符的组合(Chr(13) next IEnd SubA) 天天向上 B) 天天向上天长地久C) 出错信息 D) 天天向上清华大学天长地久程序设计(分数:2.00)A.B. C.
42、D.解析:解析 left(a(1),1)表示取原数组元素字符串第一个字符。本题是判断第一个字符是否是“天”,是“天”开头则同行输出,所以答案选 B)。24.用 InputBox 函数设计的对话框,其功能是( )。A) 能接收用户输入的数据,但不会返回任何信息B) 能接收用户输入的数据,并能返回用户输入的信息C) 既能用于接收用户输入的信息,又能用于输出信息D) 专门用于输出信息(分数:2.00)A.B. C.D.解析:解析 InputBox 函数在一个对话框中来显示提示,等待用户输入正文或按下按钮,并返回包含文本框内容。25.下面程序运行后,输出结果是( )。Private Sub mysub
43、(b()As Integer,Optional ByVal n As Integer=2)For I=1 to 4b(I)=n*INext IEnd SubPrivate Sub Command1_Click()Dim a(1 to 4)As Integer,I As IntegerCall mysub(a(),5)Mysub a()For I=1 to 4Print a(I);NextEnd SubA) 5 10 15 20 B) 2 4 6 8 C) 出错 D) 0 0 0 0(分数:2.00)A.B. C.D.解析:解析 ByVal 表示按值传递。注意本题指定了 n=2,所以数组值分别是
44、 2、4、5、8。26.有如下程序:Private Sub Command1_Click()Dim a As SingleDim b As Singlea=5: b=4Call Sub1(a,b)End SubSub Sub1(x As Single,y As Single)t=XX=t/yy=t Mod yEnd Sub在运行上述程序后,a 和 b 的值分别为( )。A) 0 0 B) 1 1 C) 2 2 D) 1 2(分数:2.00)A.B.C.D. 解析:解析 调用一个过程时,必须把实际参数传送给过程,完成形式参数与实际参数的结合,然后用实际参数执行调用的过程。因为在默认的情况下,变量
45、都是通过“引用”传送给 Sub1 过程,这种情况下,可以通过改变过程中相应的参数来改变变量的值。过程 Sub1 的形参获得 a,b 的地址,此时 x=5,y=4,在过程 Sub1 中,将 x,即 5 的值赋给 t,而将 t/y 的值赋给 x,将 f 除以 y 的余数赋给 y,此时 x,y 的值为 1,1。27.下列程序段的执行结果为( )。n:0For i=1 To 3For j=5 To Step-1n=n+1Next j,iPrint n:j;iA) 12 0 4 B) 15 0 4 C) 12 3 1 D) 15 3 1(分数:2.00)A.B. C.D.解析:解析 外层循环 3,网层循
46、环 S,一共执行 n 自加 15 次,所以 n 的值是 15;j 跳出循环的条件是1-1 等于 0;i 跳出循环的条件是 3+1=4。所以最终 j=0 1=4,选择 B)。28.在窗体上画一个名称为 Command1 的命令按钮,然后编写如下事件过程:Private Sub Command1_Click()a $=“VisualBasic“Print String(3,a$)End Sub程序运行后,单击命令按钮,在窗体上显示的内容是( )。A) VVV B) Vis C) siC D) 11(分数:2.00)A. B.C.D.解析:解析 String 函数返回指定长度重复字符的字符串。后面的
47、参数为字符串时取第一个字符。29.下面程序运行后,单击命令按钮,输出的结果是( )。Private Sub Command1_Click()Dim a%(1 To 4),b%(2 To 6),i%,str1#, str2#For i=1 To 4a(i)=1NextFor i=2 To 6b(i)=iNextstr1=YAG(A)str2=YAG(B)Print “str1=“; str1; “str2=“: str2End SubFunction YAG(a() As Integer)Dim t#,i%t=1For i=LBound(A) To UBound(A)t=t*a(i)NextYA
48、G=tEnd FunctionA) str1=24 str2=720 B) str1=12 str2=360C) str1=24 str2=180 D) str1=36 str2=720(分数:2.00)A. B.C.D.解析:解析 程序首先调用循环语句为数组 a、b 赋值,其中 a(i)=i,b(i)=i,且数组 a 的上下界分别为 1 和 4,数组 b 的上下界分别为 2 和 6,接着将数组 a 作为参数调用 YAG 过程。在 YAG 过程中,定义了两个变量 t 及 i,i 作为循环语句 For 的变量,它的初始值和终值分别为数组的上下界,循环体为t=t*a(i),即将 a(i)的值乘以 t,然后再赋给 t,当循环结束后,程序返回的就是数组 a 中的备元素的积。同理程序将数组 b 作为参数传递给 YAG 过程后返回数组 b 中备元素的积。30.关于 Exit For 的使用说明正确的是( )。A) Exit For 语句可以退出任何类型的循环B) 一个循环中只能有一个这样的语句C) Exit For 表示返回 For 语句去执行D) 一个 For 循环中可以有多条 Exit For 语句(分数:2.00)A.B.C.D. 解析:解析 Exit F