1、VB 笔试模拟试卷 275及答案与解析 1 下列叙述中,不属于软件需求规格说明书的作用的是 ( A)便于用户、开发人员进行理解和交流 ( B)反映出用户问题的结构,可以作为软件开发工作的基础和依据 ( C)作为确认测试和验收的依据 ( D)便于开发人员进行需求分析 2 下列每组控件中,都包含有滚动条的一组控件是 ( )。 ( A) ListBox和 LabelBox ( B) TextBox和 DriveListBox ( C) ComboBox 和 CheckBox ( D) FileListBox 和 DirListBox 3 窗体的隐藏和删除,分别用在不同的场合,隐藏 Form1和删除
2、Form1的命令是( ) ( A) Hide Form1 Unload Form1 ( B) Form1.Hide Form1.Unload ( C) Form1.Hide Unload Form1 ( D) Hide Form1 Form1.Unload 4 Visual Basic中的模块文件的扩展名是 _。 ( A) .reg ( B) .frm ( C) .bas ( D) .vbp 5 下列不属于软件 工程 3个要素的是 ( )。 ( A)工具 ( B)过程 ( C)方法 ( D)环境 6 结构化程序设计主要强调的是 ( )。 ( A)程序的规模 ( B)程序的效率 ( C)程序设计
3、语言的先进性 ( D)程序的易读性 7 对长度为 n的线性表进行顺序查找,在最坏情况下需要比较的次数为 ( )。 ( A) 125 ( B) n/2 ( C) n ( D) n+1 8 为了使模块尽可能独立,要求 ( A)模块的内聚程序要尽量高,且各模块间的耦合程度要尽量强 ( B)模块的内聚程度要尽量高,且各模块 间的耦合程度要尽量弱 ( C)模块的内聚程度要尽量低,且各模块间的耦合程度要尽量弱 ( D)模块的内聚程度要尽量低,且各模块间的耦合程度要尽量强 9 当将 E-R模型转换为关系模型时,对于两实体间 m: n联系,必须对 “联系 ”单独建立 _ ,用来联系双方实体。 ( A)一个实体
4、 ( B)一个属性 ( C)一个指针 ( D)一个关系 10 用树形结构来表示实体之间联系的模型称为 _。 ( A)关系模型 ( B)层次模型 ( C)网状模型 ( D)数据模型 11 下列程序运行时输出的结 果是 Option Base 1 Private Sub Form_Click() Dim x(10) As Integer, y(5) As Integer For i=1 to 10 x(i) =10-i+1 Next For i=1 to 5 y(i)=x(2*i-1)+x(2*i) Next For i=1 to 5 Print y(i) Next End Sub ( A) 3
5、7 11 45 19 ( B) 19 15 11 7 3 ( C) 1 3 5 7 9 ( D)不确定的值 12 把窗 体设置为不可见的,应该将 ( )属性设置为 False。 ( A) Font ( B) Caption ( C) Enable ( D) Visible 13 刚建立一个新的标准 EXE工程后,不在工具箱中出现的控件是( )。 ( A)单选按钮 ( B)图片框 ( C)通用对话框 ( D)文本框 14 下列程序段的显示结果为 _。 x=0 Print x-1 x=3 ( A) -1 ( B) 3 ( C) 2 ( D) 0 15 在窗体上画一个命令 按钮 (其名称为 Comm
6、and1),然后编写如下事件过程: Private Sub Command1_Click() For i=1 To 4 If i=1 Then x=i If i =4 Then x=x+1 Print x Next i End Sub 程序运行后,单击命令按钮,其输出结果为 _。 ( A) 1 2 3 4 ( B) 2 3 4 5 ( C) 2 3 4 4 ( D) 3 4 5 6 16 Microsoft Visual Basic 0包括三种版本,其中不包括 _。 ( A)通用版 ( B)企业版 ( C)学习版 ( D)专业版 17 按文件的访问方式不同,可以将文件分为 ( )。 ( A)顺
7、序文件和随机文件 ( B)文本文件和数据文件 ( C)数据文件和可执行文件 ( D) ASCII文件和二进制文件 18 某程序列表框中有许多项,现在用 Timer控件控制时间, 0.1秒删除一项,直到删完为止,用一滚动条来显示删除的项目,请选择合适的 语句,完成此程序 ( )。Private Sub Command2_Click() HScroll1.Min=0 HScroll1.Max=List1.ListCount HScroll1.Value=0 Timer1.Interval= Timer1.Enabled=True End Sub Private Sub Timer1_Timern
8、If List1.ListCount 0 Then List1.RemoveItem 0 HScroll1.Value=HScroll1.Max-Listl.ListCount Else Timer1.Enabled= MsgBox“全部删除 !“ End If End Sub ( A) 100 False ( B) 0.1 True ( C) 100 True ( D) 0.1 False 19 可以通过 ( )的方法来输出一个二维数组中的各个元素。 ( A)引用数组的两个下标 ( B)将数组名赋值给变量 ( C)通过引用数组的一个下标 ( D)以上都不正确 20 过程语句中,使用的参数表可
9、以是下列哪种 ( )。 ( A)常量或变量名 ( B) 表达式或变量名 ( C)数组元素或变量名 ( D)变量名或数组名 21 执行语句 Print “Sgn(-34)=“;Sgn(-34)后,其输出结果为 ( )。 ( A) Sgn(-34)=34 ( B) Sgn(-34)=-34 ( C) Sgn(-34)=+1 ( D) Sgn(-34)=-1 22 下列语句错误的是 ( A) If a=3 And b=2 Then c=3 End If ( B) If a=1 Then c=2 Else If a=2 End If ( C) If a=3 And b=2 Then c=2 Else
10、If a=2 Then c=3 End If ( D) If a=1 Then c=2 23 在窗体上画一个名称为 Command1的命令按钮,然后编写如下通用过程和命令按钮的事件过程: Private Function f(m As Integer) If m Mod 2=0 Then f=m Else f=1 End If End Function Private Sub Command1_Click() Dim i As Integer s=0 For i=1 To 5 s=s+f(i) Next Print s End Sub 程序运行后,单击命令按钮,在窗体上显示的是 _。 ( A)
11、 11 ( B) 10 ( C) 9 ( D) 8 24 下面关于 InputBox 函数的叙述,不正确的是 ( ) ( A)在默认情况下, InputBox的返回值是一个字符串 ( B) InputBox函数可以写成 InputBox$的形式 ( C)执行一次 InputBox 函数可以输入多个数值 ( D)执行一次 InputBox 函数时,不可以同时输入多个数值 25 下面语句正确的是 ( A) If x 3 * y And x y Then y x3 ( B) If x 3 * y And x y Then y x3 ( C) If x 3 * y:x y Then y x3 ( D)
12、 If x 3 * y And x y Then y=x* *3 26 执行下面的程序段后,变量 c的值为 a=14 b=30 Select Case b10 Case 0 c=a * 10 + b Case 1 To 9 c=a*100+b Case 10 To 99 c=a*1000+b End Select Print c ( A) 363 ( B) 2548 ( C) 1430 ( D) 9875 27 执行如下语句: a=InputBox(“Today“,“Tomorrow“,“Yesterday“,“Day before yesterday“,5) 将显示一个对话框,在对话框的输入
13、区中显示的信息是 _。 ( A) Today ( B) Tomorrow ( C) Yesterday ( D) Day before yesterday 28 假定编写了如下事件过程: Private Sub Form_MouseDown(Button As Integer,Shift As Integer, X As Single, Y As Single) If Button=2 Then Print “aaaa“ End If End Sub 程序运行后,为了在窗体上输出 “AAAA”,应按下的鼠标键为 ( A)左键 ( B)右键 ( C)同时按下左、右键 ( D)按什么键都不显示 2
14、9 表达式 5 Mod 3+35*2的值是 ( A) 0 ( B) 2 ( C) 4 ( D) 6 30 设有如下程序 Option Base 1 Private Sub Command1_Click( ) Dim a(10)As Integer Dim n As Integer n=lnput Box(“输入数据 ”) If n 10 Then Call GetArray(a, n) End If End Sub Private Sub GetArray(b( )As Integer, n As Integer) Dim c(10)AsInteger j=0 For i=1 To n b(i
15、)=CInt(Rnd( )*100) If b(i)/2=b(i)2 Then j=j+1 c(j)=b(i) End lf Next Print j End Sub 以下叙述中错误的是 ( A)数组 b中的偶数被保存在数组 c中 ( B)程序运行结束时,在窗体上显示的是 c数组中元素的个数 ( C) GetArray过程的参数 n是按值传送的 ( D)如果输入的数据大于 10,则窗体上不显示任何信息 31 在窗体上画一个名称为 Text1的文本框和一个名称为 Command1的命令按钮,然后编写如下事件过程: Private Sub Command1_Click( ) Text1.Text=
16、“Visual“ Me.Text1=“Basie“ Text1=“Program“ End Sub 程序运行后,如果单击命令按钮,则在文本框中显示的是 ( A) Visual ( B) Basic ( C) Program ( D)出错 32 在窗体上画一个命令按钮 (名称为 Command1),然后编写如下事件过程: Private Sub Command1_Click() Dim b As Integer b=b+1 End Sub 运行程序,三次单击命令按钮后,变量 b的值是: _。 ( A) 0 ( B) 1 ( C) 2 ( D) 3 33 下列程序段的执行结果为 m=1 n=1 S
17、elect Case m Case 1 Select Case n Case 0 Print “* * 0 * *“ Case 1 Print “ * * 1 * * “ End Select Case 2 print “ * * 2 * * “ End Select ( A) * * 0 * * ( B) * * 1 * * ( C) * * 2 * * ( D) 0 34 运行下列程序段后,显示的结果为 J1=63 J2=36 If J1 J2 Then Print J2 Else Print J1 ( A) 63 ( B) 36 ( C) 55 ( D) 2332 35 当一个复选框被选
18、中时,它的 Value的属性的值是 ( A) 3 ( B) 2 ( C) 1 ( D) 0 36 下 列事件过程的功能是:建立一个名为 Datal的随机文件,存放角度值及这些角度的正弦函数值和余弦函数值,角度为 1, 2, 3, , 90。请在空白处填入适当的内容,将程序补充完整。 Private Type Ang K As Integer Sinx As Single Cosx As Single End Type Dim Ksc As Ang Private Sub Form_Click() Dim Y As Single Open _ Y=3.14159/180 For i=1 TO 9
19、0 Ksc.K=i Ksc.Sinx=Sin(i*Y) Ksc.Cosx=Cos(i*Y) _ Next i Close#2 End Sub 37 不改变关系表中的属性个数但能减少元组个数的是 _。 38 在打开一个自定义对话框时,可以使用 _方法来决定对话框窗体的显示模式。 39 数据库系统其内部分为 3级模式,即概念模式、内模式和外模式。其中,_是用户的数据视图,也就是用户所见到的数据模式。 40 二分法查找仅限于这样的表;表中的数据元素必须有序,其存储结构必须是_。 41 为了能自动放大或缩小图像框中的图形以与图像框的大小相适应 ,必须把该图片框的 Stretch属性设置为【 】。 42
20、 DefSng a定义的变量 a是 _类型的变量。 43 记时器控件能有规律的以一定时间间隔触发【 】事件,并执行该事件过程中的程序代码。 44 在 窗体上画一个名为 Command1的命令按钮。下列程序的功能是:从输入对话框输入一个正整数 n。用随机函数产生 n个 1 100范围的随机数,然后求出去掉一个最大数和最小数的平均数。根据题意,请完善下列程序: Private Sub Command1_Click() Dim ave As Single, max As Integer, i As Integer, n As Integer Dim min As Integer, Sum As In
21、teger, s As String Dim t As Integer s=InputBox(“输入一个正整数 :“) n=Val(s) If n 0 Then max=n: min=n: Sum=0 For j=1 To n t=【 】 Print t; Sum=Sum+t If t min Then min=t Elself max t Then max=t End If Next j 【 】 ave=Sum/n MsgBox“平均值 =“+Str(ave), “去掉最大数和最小数后 “ End If End Sub 45 以下是一个比赛评分程序。在窗体上建立一个名为 Text1的文本框数
22、组,然后画一个名为 Text2的文本框和名为 Command1命令按钮。运行时在文本框数组中输入 7个分数,单击 “计算得分 ”命令按钮,则最后得分显示在 Text2文本框中 (去掉一个最高分和一个最低分后的平均分几位最后得分 ),如图 16-9所示。请填空。Private Sub Command1_Click()Dim k As IntegerDim sum Ad Single, max As Single, min As Singlesum=Text1(0)max=Text1(0)min=【 】 For k=【 】 To 6If maxText1(k)Thenmax=Text1(k)End
23、 IfIf min Text1(k)ThenMin=Text1(k)End Ifsum=sum+Text1(k)Next kText2=(【 】 )/5End Sub 46 如下有一段不完整的程序段,如果要求该程序执行 3次循环,则在程序中的括号里要填入【 】。 Private Sub Command1_Click() x = 1 do x=x+3 Print x Loop Until【 】 End Sub 47 如果不指明函数过程参数的类型,则该参 数的数据类型为【 】。 48 在窗体上画一个命令按钮 Command1,然后编写如下程序: Private Sub Command1_click
24、() Dim arr() As Integer ReDim arr(3) For i=0 To 3 arr(i)=i Next i x=InputBox(“请输入一个数字: “) If Val(x) 4 Then ReDim arr(4) an(4)=x End If Me.Print(an(4)-arr(3) End Sub 程序运行后,单击命令按钮,在输入对话框中输入 12,输出结果为【 】。 49 Visual BASIC应用程序通常由 3类模块组成,即窗体模块、【 】和类模块。 50 为了把一个 Visual BASIC应用程序装入内存,只要装入【 】文件即可。 VB 笔试模拟试卷 2
25、75答案与解析 1 【正确答案】 D 【试题解析】 软件需求规格说明书 (SRS, Software Requirement Specification) 是需求分析阶段的最后成果,是软件开发中的重要文档之一。它具有以下几个方面的作用: 便于用户、开发人员进行理解和交流; 反映出用户问题的结构,可以作为软件开发工作的基础和依据; 作为确认测试和验收的依据。 2 【正确答案】 D 3 【正确答案】 C 4 【正确答案】 C 5 【正确答案】 D 【试题解析】 软件工程包括 3个要素,即方法,工具和过程。方法是完成软件工程项目的技术手段;工具支持软件的开发、管理和文档生成;过程支持软件开发的各个环
26、节的控制、管理。 6 【正确答案】 D 【试题解析】 程序不光是编写完就结束了,为了测试和维护程序,往往还有其他人阅读和跟踪程序,因此程序设计的风格应该强调简单和清晰,即程序的易读性, “清晰第一,效率第二 ”。 7 【正确答案】 C 【试题解析】 对线性表进行顺序查找时,从表中的第一个元素开始,将给定的值与表中逐个元素的关键字进行比较,直到两者相符,查找到所要找的元素为止。在最坏情况下,要查找的元素是表的最后一个元素或查找失败,这两种情况都需要将这个元素与表中的所有元素进行比较,因此比较次数为 n。 8 【正确答案】 B 【试 题解析】 系统设计的质量主要反映在模块的独立性上。评价模块独立性
27、的主要标准有两个:一是模块之间的耦合,它表明两个模块之间互相独立的程度;二是模块内部之间的关系是否紧密,称为内聚。一般来说,要求模块之间的耦合尽可能地弱,即模块尽可能独立,而要求模块的内聚程度尽量地高。综上所述,选项 B 的答案正确。 9 【正确答案】 D 10 【正确答案】 B 【试题解析】 层次模型是最早发展出来的数据库模型。它的基本结构是树形结构,这种结构方式在现实世界中很普遍,如家族结构、行政组织机构,它们自顶向下、层次分明。 11 【正确答案】 B 【试题解析】 本题考查数组的定义和赋值。题中定义了数组 x(10)和 y(5),并通过 For循环给每个数组成员赋值。 12 【正确答案
28、】 D 13 【正确答案】 C 【试题解析】 通用对话框需要用户自己手动添加才能到工具箱中。 14 【正确答案】 A 【试题解析】 在该题中, x的初始值为 0,顺序执行各语句,打印 x-1的值即 -1,然后对 x重新赋 3,不影响打印的结果。 15 【正确答案】 B 【试题解析】 第一次循环时 x的值为 2,每次加 1,所以答 案为 2 3 4 5。 16 【正确答案】 A 【试题解析】 Microsoft Visual Basic 6.0 包括三种版本,分别是:学习版、专业版、企业版。 17 【正确答案】 A 【试题解析】 根据不同的分类标准,文件可分为不同的类型。根据数据性质,文件可分为
29、程序文件和数据文件;根据数据的存取方式和结构,文件可分为顺序文件和随机文件;根据数据的编码方式,文件可分为 ASCII文件和二进制文件。 18 【正确答案】 A 【试题解析】 本题的难点在于考生能从全局上读懂代码, 在按钮的单击事件中,设置时钟控件的时间间隔,其单位是毫秒,所以 0.1秒应设置为 100毫秒;在Timer事件中,如果已经全部删除列表框中的内容,则应将 Timer1 关闭,不再执行删除操作,所以 Enabled 属性应该设置为 False。 19 【正确答案】 A 【试题解析】 一般输出数组元素时,可以通过引用数组下标来逐个输出。在输出二维数组元素时,也可以采用同样的方法,只是二
30、维数组需要引用两个下标来逐个输出。 20 【正确答案】 D 【试题解析】 参数表含有在调用时传送给过程的简单变量或数组名, 如果是数组,则要在数组名后加上一对括号。参数过程中不允许有常量、表达式和数组元素出现。 21 【正确答案】 D 【试题解析】 本题使用 Sgn函数来判断某数的正负号。当参数大于 0时,返回1;当参数等于 0时,返回 0;当参数小于 0时,返回 -1。 22 【正确答案】 B 【试题解析】 本题考查 If句型的使用。 If语句有单行语句与块结构两种。 A、 D为单行语句, C为块结构语句,而 B 由于缺少 Else If后面的语句块而不健全,是错误的,故本题选 B。 23
31、【正确答案】 C 【试题解析】 在 f函数的过程中, “m M0d 2=0”为判断形参 m是否为偶数的条件。当 m为偶数时,通过函数名 f返回原值;否则返回 1。当控制变量 i分别为1 5的函数调用计算过程中,变量 s的计算过程为 s=1+2+1+4+1=9。 24 【正确答案】 C 【试题解析】 执行一次 InputBox函数时,不可以同时输入多个数值。选项 C的叙述不正确。 25 【正确答案】 A 【试题解析】 本题是对条件语句结构的考查。条件语句可以分为三种类型。如下: If Then结构 If Then Else 结构 Select Case结构 而 If Then 结构有两种格式:
32、If 条件 Then 语句 If 条件 Then 语句块 End If 26 【正确答案】 C 【试题解析】 过程分析: b: 30,所以 b10=3,在 1-9之间,执行语句c=a*100+b, c=14*100+ 30=1430。 27 【正确答案】 C 【试题解析】 InputBox 函数的功能是显示一个对话框,该对话框能接收用户输入的数据。 语法 InputBox(prompt,title, default,xpos, yposl, helpfile, context) InputBox 函数的语法具有以下几个命名参数: 部分 描述 Prompt 必需的。作为对话框消息出现的字符串表达
33、式。 prompt 的最大长度大约是 1024个字符,由所用字符的宽度决定。如果 prompt包含多个行,则可在各行之间用回车符 (Chr(13)、换行符 (Chr(10)或回车换行符的组合(Chr(13)设为 Flase 时 ,图像框的大小随图像的大小而改变。 42 【正确答案】 单精度 【试题解 析】 用 DefSng语句可以定义变量,一般格式: DefSng 数值范围,常用的语句及其定义的数据类型如下表所示。43 【正确答案】 Timer 【试题解析】 Timer 事件在一个 Timer控件的预定的时间间隔过去之后发生。该间隔的频率储存于该控件的 Interval 属性中,它以千分之一秒
34、为单位指定时间的长度。 44 【正确答案】 Int(Rnd*100+1) ,Sum=Sum-max-min 【试题解析】 首先假定输入的正整数为最大数 (max)和最小数 (min)初值。本题采用了 InputBox从键盘上输入数据,用 Ms-gBox输出结果。在程序中 min 必须赋一个初值,否则 min 默认为 0。在循环中,每产生一个数就和 max 及 min 进行比较,大的放入 max,小的放入 min,并计算各数之和。循环结束后,减去 max和min,求得平均数 ave。 45 【正确答案】 Text(0) ,1 ,sum-max-min 【试题解析】 根据题意,本题的功能是计算得分
35、程序,即去掉一个最高分和一个最低分后的平均分即为最后的得分。所以程序段开始时应将第一个文本框的值Text1(0)赋给 sum、 max和 min,所以 10处应填入的是 Text1(0);对于 For循环应该是从 Text1(1)开始处理,其下标是 1,所以 11处应填入的是 “1”; Text2用来输出得分,即去掉一个最高分和一个最低分后的平均分,所以在 12处应填入的是“sum-max-min”。 46 【正确答案】 x =8 【试题解析】 do. Loop until循环是先执行后判断。利用 x的值来控制循环次数, x的计算过程为: x=1、 4、 7、 10。 47 【正确答案】 Va
36、riant 【试题解析】 参数没有指定类型时使 用默认类型 Variant注意: Visual Basic基本数据类型和用户自定义数据类型 48 【正确答案】 12 【试题解析】 用 Redim语句重定义数组的维数时,原有维数内的内容将被破坏。除非用 Redim Preserve来重新定义维数。 本题中由于输入值 x 4,动态数组在被重定义为包含 4个元素的数组后 (即Redim arry(3),此时 arry(3)=3),重新被定义为包含 5个元素的数组,而重定义时并未用 Preserve关键字。故此时 arry(3)=0(实际上 arry(0)、 arry(1)、 arry(2)的值也都为 0,即 Integer 类型变量的初始值 )。 49 【正确答案】 标准模块 【试题解析】 模块是相对独立的程序单元。在 Visual Basic中主要有 3种模块,即窗体模块、标准模块和类模块。类模块主要用来定义类和建立 Active X组件。 50 【正确答案】 ctvbbblank 【试题解析】 Visual Basic 总是以 ASCII 格式保存工程文件 (.vbp)。工程文件包含了反映工程的设置的项目 (包括工程中的窗体和模块、引用、以及为控制编译而选取的各种各样 的选项,等等 )。当工程文件被装入内存的时候,所有相关的应用程序的信息也就都被装入了内存。