1、国家二级(VB)机试模拟试卷 182 及答案解析(总分:86.00,做题时间:90 分钟)一、选择题(总题数:40,分数:80.00)1.算法的时间复杂度是指( )。(分数:2.00)A.算法的长度B.执行算法所需要的时间C.算法中的指令条数D.算法执行过程中所需要的基本运算次数2.以下数据结构中,属于非线性数据结构的是( )。(分数:2.00)A.栈B.线性表C.队列D.二叉树3.数据结构中,与所使用的计算机无关的是数据的( )。(分数:2.00)A.存储结构B.物理结构C.逻辑结构D.线性结构4.内聚性是对模块功能强度的衡量,下列选项中,内聚性较弱的是( )。(分数:2.00)A.顺序内聚
2、B.偶然内聚C.时间内聚D.逻辑内聚5.在关系中凡能惟一标识元组的最小属性集称为该表的键或码。二维表中可能有若干个键,它们称为该表的( )。(分数:2.00)A.连接码B.关系码C.外码D.候选码6.检查软件产品是否符合需求定义的过程称为( )。(分数:2.00)A.确认测试B.需求测试C.验证测试D.路径测试7.数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是( )。(分数:2.00)A.控制流B.加工C.存储文件D.源和潭8.待排序的关键码序列为(15,20,9,30,67,65,45,90),要按关键码值递增的顺序排序,
3、采取简单选择排序法,第一趟排序后关键码 15 被放到第( )个位置。(分数:2.00)A.2B.3C.4D.59.对关系 S 和关系 R 进行集合运算,结果中既包含关系 S 中的所有元组也包含关系 R 中的所有元组,这样的集合运算称为( )。(分数:2.00)A.并运算B.交运算C.差运算D.除运算10.下列选项中,不属于数据管理员(DBA)职责的是(分数:2.00)A.数据库维护B.数据库设计C.改善系统性能,提高系统效率D.数据类型转换11.下面的数写成普通十进制数是( )。86787E8(分数:2.00)A.86787000B.867870000C.8678700D.8678700000
4、12.当窗体大小改变时,要使其中的控件也按比例发生变化,应使用窗体的( )。(分数:2.00)A.AutoSize 属性B.Resize 事件C.AutoRedraw 属性D.Stretch 属性13.以下能正确定义数据类型 SystemInfo 的代码是( )。(分数:2.00)A.Type Systemlnfo DiskDrives As String*10 Memory As Long End TypeB.Type Systemlnfo DiskDrives As String*10 Memory As Long End SystemInfoC.Type Systemlnfo DiskD
5、rives String*10 Memory Long End Type SystemInfoD.TypedefSystemlnfo DiskDrives String*10 Memory Long End Type14.以下能从字符串“VisualBasic”中直接取出子字符串“Basic”的函数是( )。(分数:2.00)A.LeftB.MidC.StringD.Instr15.设“A“87654321“”,则表达式 Val(Left(A,4)Mid(A,4,2)的值为( )。(分数:2.00)A.876543B.876554C.8D.616.窗体上命令按钮的事件过程如下: Private
6、 Sub Command1_Click() A“34“:B“26“:C“98“ Print BCA End Sub 运行程序后,单击命令按钮,输出结果是( )。(分数:2.00)A.269834B.269834C.158D.程序运行出错17.当窗体最小化时缩小为一个图标,设置这个图标的属性是( )。(分数:2.00)A.MouselconB.IconC.PictureD.MousePointer18.假定窗体上有一个标签,名为 Label1,为了使该标签透明并且没有边框,则正确的属性设置为( )。(分数:2.00)A.Label1.BackStyle0 Label1.BorderStyle0B
7、.Label1.BackStyle1 Label1.BorderStyle1C.Label1.BackStyleTrue Label1.BorderStyleTrueD.Label1.BackStyleFalse Label1.BorderStyleFalse19.在程序运行时,下面的叙述中正确的是( )。(分数:2.00)A.用鼠标右键单击窗体中无控件的部分,会执行窗体的 Form_Load 事件过程B.用鼠标左键单击窗体的标题栏,会执行窗体的 Form_Click 事件过程C.只装入而不显示窗体,也会执行窗体的 Form _Load 事件过程D.装入窗体后,每次显示该窗体时,都会执行窗体的
8、 Form_Click 事件过程20.下面的程序执行完毕后,组合框中数据项的值是( )。 Private Sub Form_Click0 For i=1 To 6 Combo1AddItem i Next i For i1 To 3 Combo1Removeltem i Next i End Sub(分数:2.00)A.1 5 6B.1 3 5C.4 5 6D.2 4 621.窗体上有 1 个名称为 Text1 的文本框;1 个名称为 Timer1 的计时器控件,其 Interval 属性值为5000,Enabled 属性值是 True。Timer1 的事件过程如下: Private Sub
9、Timer1_Timer() Static flag As Integer If flag0 Then flag1 flagflag If flag1 Then Text1ForeColor&HFF&HFF&为红色 Else Text1ForeColor&HC000&HC000& 为绿色 End If End Sub 以下叙述中正确的是( )。(分数:2.00)A.每次执行此事件过程时,flag 的初始值均为 0B.flag 的值只可能取 0 或 1C.程序有逻辑错误,Else 分支总也不能被执行D.程序执行后,文本框中的文字每 5 秒改变一次颜色22.在窗体上画一个命令按钮,然后编写如下事件
10、过程: Private Sub Command1_Click() x0 do Until X1 aInputBox(“请输入 a 的值“) aVal(a) bInputBox(“请输入 b 的值“) bVal(b) xInputBox(“请输入 x 的值“) xVal(x) aabx Loop Prim a End Sub 程序运行后,单击命令按钮,依次在输入对话框中输入 5、4、3、2、1、1 则输出结果是( )。(分数:2.00)A.2B.3C.14D.1523.下列程序的执行结果为( )。 A“5“:B“6“ AVal(A)Val(B) BVal(“56“) IfAB Then Prin
11、t AB Else Print BA(分数:2.00)A.45B.45C.56D.024.执行下面的程序段后,变量 S 的值为( )。 S5 For i26 To 49 Step 06 SS1 Next i(分数:2.00)A.10B.8C.9D.725.数学式子 5(ab)2 对应的 Visual Basic 表达式是( )。(分数:2.00)A.5ab*2B.5(ab)2C.5(ab)*木 2D.5(ab)*(ab)26.假定有以下循环结构 Do Urntil 条件 循环体 Loop 则正确的描述是( )。(分数:2.00)A.如果“条件”是一个为 0 的常数,则一次循环体也不执行B.如果
12、“条件”是一个为 0 的常数,则至少执行一次循环体C.如果“条件”是一个不为 0 的常数,则至少执行一次循环体D.不论“条件”是否为“真”,至少要执行一次循环体27.某人编写如下函数来判断 a 是否为素数,若是,则函数返回 True;否则返回 False。 Function prime(a As Integer)As Boolean Dim k As Integer,isprime As Boolean If a2 Then isprimeFalse Else isprimeTrue k2 Do While ka2 And isprime If a Mod k0 Then isprime Fa
13、lse Else kk1 End If Loop End If primeisprime End Function 在测试时发现有 1个非素数也被判断为素数,这个错判的数是( )。(分数:2.00)A.0B.1C.4D.628.假定建立了一个名为 Command1 的命令按钮数组,则以下说法中错误的是( )。(分数:2.00)A.数组中每个命令按钮的名称(名称属性)均为 Command1B.数组中每个命令按钮的标题(Caption 属性)都一样C.数组中所有命令按钮可以使用同一个事件过程D.用名称 Command1(下标)可以访问数组中的每个命令按钮29.以下叙述中正确的是( )。(分数:2.
14、00)A.事件过程都由用户来编写B.事件过程都不是由用户编写的C.事件过程有的由用户编写,有的由系统确定D.用户可以确定事件方法过程是否由用户编写30.下面程序执行时,输出的结果是( )。 Private Sub Form_Click() Dim i As Integer,j As Integer i10 Do iij For j10 To i Step3 iij Next j Loop While i50 Print i;j End Sub(分数:2.00)A.50 10B.50 9C.57 10D.57 931.下列不一定是传值的虚实结合方式的选项是( )。(分数:2.00)A.调用过程时
15、实参为表达式B.调用过程时实参为常量C.调用过程时实参为变量名D.调用过程时实参将变量名用括号括起来32.在窗体上有两个文本框:Text1 和 Text2,然后编写如下事件过程: Private Sub Form_Load() Show Text1Text“ “:Text2Text“ “:Text2SetFocus End Sub Private Sub Text2 KeyDown(KeyCode As Integer,ShiflAs Integer) Text1.TextText1.TextChr(KeyCode4) End Sub 程序运行后,如果在 Text2 文本框中输入“ertyu”
16、,则 Text1 文本框中的内容为( )。(分数:2.00)A.anpuqB.ANPUQC.ERTYUD.ertyu33.下列叙述中错误的是( )。(分数:2.00)A.一个工程中可以含有多个标准模块文件B.以.bas 为扩展名的文件是标准模块文件C.窗体文件包含该窗体及其控件的属性D.在工程资源管理器窗口中只能包含一个工程文件及属于该工程的其他文件34.要使菜单项 MenuOne 在程序运行时失效,应使用的语句是( )。(分数:2.00)A.MenuOne.VisibleTrueB.MenuOne.VisibleFalseC.MenuOne.EnabledTrueD.MenuOne.Enab
17、ledFalse35.下列程序的功能是调用字体对话框来设置文本框中的字体,单击 Command1 按钮弹出对话框,进行相应的字体、字号等的设置,然后单击“确定”按钮退出对话框,则文本框中将发生哪些变化( )。 Private Sub Command1_click() CommonDialog1.CancelErrorTrue CommonDialog1.Flags3 OnError Resume Next CommonDialog1.ShowFont Text1.Font.NameCornmonDialog1.FontName Text1.Font.SizeCommonDialog1.Font
18、Size Text1.Font.BoldCommonDialog1.FontBold Text1.Font.ItalicCommonDialog1.Fontltalic Text1.Font.UnderlinommonDialog1.FontUnderline Text1.FontStrikethrnommonDialog1.FontStrikethrn Text1.ForeColorCommonDialog1.Color End Sub(分数:2.00)A.Text1 的文字下划线发生变化B.Text1 的字体发生变化C.Text1 的字体和颜色发生变化D.程序出错36.下面( )不是 VB
19、 的文件系统控件。(分数:2.00)A.DriveListBox 控件B.DirListBox 控件C.FileListBox 控件D.ListBox 控件37.下面的程序执行时,将把当前目录下的顺序文件 smtext1txt 的内容读入内存,并在文本框 Text1中显示出来。在横线处应填写( )。 Private Sub Command1_Click() Dim inData As String Text1.Text“ Open“.smtext1.txt“_As#1 Do While_ Input#1.inData Text1.TextText1.Text inData Loop Close
20、#1 End Sub(分数:2.00)A.Input (EOF(1)B.Input (Not EOF(1)C.Append (Not EOF(1)1D.Append (EOF(1)38.以下程序的功能是:把父目录下顺序文件 smtext1.txt 的内容读入内存,并在文本框 Text3 中显示出来。请选择适合横线处的语句( )。 Private Sub Command1_Click() Dim inData As String Text3.Text“ Open“smtext1.txt“_As#1 Do While_ Input#1,inData Text3.TextText3Text & in
21、Data Loop Close#1 End Sub(分数:2.00)A.For Input Not EOF(1)B.For Output EOF(1)C.For Append Not EOF(1)D.For Random EOF(1)39.为达到把 a、b 中的值交换后输出的目的,某人编程如下: Private Sub Command1_Click() a10:b20 Call swap(a,b) Print a,b End Sub Private Sub swap(ByVal a As Integer,ByVal b As hteger) ca:ab:bc End Sub 在运行时发现输出结
22、果错了,需要修改。下面列出的错误原因和修改方案中正确的是( )。(分数:2.00)A.调用 swap 过程的语句错误,应改为:Call swap a,bB.输出语句错误,应改为:Print“a“,“b“C.过程的形式参数有错,应改为:swap(ByRef a As Integer,ByRef b As Integer)D.swap 中 3 条赋值语句的顺序是错误的,应改为 ab:bc:ca40.有如下函数过程: Function fl(x As Integer)As Long Dim SAs Long,i As Integer s0 For i1 To x ssi Next i f1s End
23、 Function 在窗体上添加一个命令按钮,名为 Command1,并编写事件过程调用该函数,则输出结果为( )。 Private Sub Command1_Click() Dim iAs Integer,sumAs Long For i1 to 5 sumsumf1(i) Next i Print sum End Sub(分数:2.00)A.25B.35C.45D.55二、基本操作题(总题数:1,分数:2.00)41.请根据以下各小题的要求设计 Visual Basic 应用程序(包括界面和代码)。 (1)在名称为 Form1 的窗体上画一个名称为 Image1 的图像框,再画一个名称为
24、Command1、标题为”退出”的命令按钮。通过属性窗口设置图像框的属性,将考生文件夹下的 pic1bmp 文件加载到图像框,使图片的大小能够随图像框大小而改变。设置命令按钮的属性,使得程序运行时,按回车键即可执行命令按钮的 Click 事件过程。窗体外观如图 310 所示。 注意:存盘时必须存放在考生文件夹下,工程文件名为 sjt1vbp,窗体文件名为 sjt1fim。 (2)在名称为 Form1 的窗体上画一个名称为 CD1 的通用对话框,在属性窗口中设置 CD1的属性,使得打开通用对话框时,其初始路径是“D:”。按照表 31 设计菜单,窗体外观及菜单如图311 所示。请编写程序,使得运行
25、程序,单击“打开文件”或“保存文件”菜单项时,相应地出现“打开”或“保存”对话框。要求程序中不得使用变量,每个事件过程中只能写一条语句。 (分数:2.00)_三、简单应用题(总题数:1,分数:2.00)42.(1)考生文件夹中有工程文件 sjt3vbp。窗体上已有部分控件。在窗体上画一个名称为 Text1 的文本框,设置相应属性,使得该文本框能够显示多行文本,且有垂直滚动条,如图 326 所示。运行程序时,将在文本框 Text1 中显示一段英文短文。 (分数:2.00)_四、综合应用题(总题数:1,分数:2.00)43.考生文件夹下的工程文件 sjt5vbp 中有 1 个初始内容为空的文本框
26、Text1,2 个标题分别是“读数据”和“计算”的命令按钮。请画 1 个名称为 Labe12、标题为“各行平均值的最小值为”的标签,再画 1 个名称为 Text2、初始内容为空的文本框。效果如图 318 所示。 (分数:2.00)_国家二级(VB)机试模拟试卷 182 答案解析(总分:86.00,做题时间:90 分钟)一、选择题(总题数:40,分数:80.00)1.算法的时间复杂度是指( )。(分数:2.00)A.算法的长度B.执行算法所需要的时间C.算法中的指令条数D.算法执行过程中所需要的基本运算次数 解析:解析:算法的时间复杂度,是指执行算法所需要的工作量,可以用算法在执行过程中所需基本
27、运算的执行次数来度量算法的工作量。2.以下数据结构中,属于非线性数据结构的是( )。(分数:2.00)A.栈B.线性表C.队列D.二叉树 解析:解析:二叉树属于非线性结构。栈是一种特殊的线性表,这种线性表只能在固定的一端进行插入和删除操作;队列可看作是插入在一端进行,删除在另一端进行的线性表。3.数据结构中,与所使用的计算机无关的是数据的( )。(分数:2.00)A.存储结构B.物理结构C.逻辑结构 D.线性结构解析:解析:数据的逻辑结构反映的是数据元素之间的逻辑关系,与使用的计算机无关。4.内聚性是对模块功能强度的衡量,下列选项中,内聚性较弱的是( )。(分数:2.00)A.顺序内聚B.偶然
28、内聚 C.时间内聚D.逻辑内聚解析:解析:内聚是从功能角度来衡量模块的联系,它描述的是模块内的功能联系。内聚有如下种类,它们之间的内聚度由弱到强排列: 偶然内聚一一模块中的代码无法定义其不同功能的调用。但它使该模块能执行不同的功能,这种模块为巧合强度模块。 逻辑内聚一一这种模块把几种相关的功能组合在一起,每次被调用时,由传送给模块的参数来确定该模块应完成哪一种功能。 时间内聚一一这种模块顺序完成一类相关功能,比如初始化模块,它顺序地为变量置初值。 过程内聚一一如果一个模块内的处理元素是相关的,而且必须以特定次序执行,则称为过程内聚。 通信内聚一一这种模块除了具有过程内聚的特点外,还有另外一种关
29、系,即它的所有功能都通过使用公用数据而发生联系。 顺序内聚一一如果一个模块内各个处理元素和同一个功能密切相关,而且这些处理必须顺序执行,处理元素的输出数据作为下一个处理元素的输入数据,则称为顺序内聚。 功能内聚一一如果一个模块包括为完成某一具体任务所必需的所有成分,或者说模块中所有成分结合起来是为了完成一个具体的任务,此模块则为功能内聚模块。5.在关系中凡能惟一标识元组的最小属性集称为该表的键或码。二维表中可能有若干个键,它们称为该表的( )。(分数:2.00)A.连接码B.关系码C.外码D.候选码 解析:解析:在关系中凡能惟一标识元组的最小属性集称为该表的键或码。二维表中可能有若干个键,它们
30、称为该表的候选码或候选键。从二维表的所有候选键中选取一个作为用户使用的键称为主键或主码。6.检查软件产品是否符合需求定义的过程称为( )。(分数:2.00)A.确认测试 B.需求测试C.验证测试D.路径测试解析:解析:确认测试的任务是验证软件的功能和性能,以及其他特性是否满足需求规格说明中确定的各种需求。7.数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是( )。(分数:2.00)A.控制流 B.加工C.存储文件D.源和潭解析:解析:数据流图用于抽象描述一个软件的逻辑模型,它由一些特定的图符构成,包括 4 个方面,即加工、数据
31、流、存储文件、源和潭。8.待排序的关键码序列为(15,20,9,30,67,65,45,90),要按关键码值递增的顺序排序,采取简单选择排序法,第一趟排序后关键码 15 被放到第( )个位置。(分数:2.00)A.2B.3 C.4D.5解析:解析:选择排序的基本思想是扫描整个线性表,从中选出最小的元素,将它交换到表的最前面,然后对剩下的子表采用同样的方法,直到子表为空。所以第一趟排序后,将选出最小的元素 9 放在第一个位置,元素 15 则放在第 3 个位置。9.对关系 S 和关系 R 进行集合运算,结果中既包含关系 S 中的所有元组也包含关系 R 中的所有元组,这样的集合运算称为( )。(分数
32、:2.00)A.并运算 B.交运算C.差运算D.除运算解析:解析:关系的并运算是指,由结构相同的两个关系合并,形成一个新的关系,其中包含两个关系中的所有元组。10.下列选项中,不属于数据管理员(DBA)职责的是(分数:2.00)A.数据库维护B.数据库设计C.改善系统性能,提高系统效率D.数据类型转换 解析:解析:数据库管理员(DataBaseAdministrator,DBA)是指对数据库的规划、设计、维护、监视等的人员,其主要工作如下:数据库设计。DBA 的主要任务之一是数据库设计,具体地说是进行数据模式的设计;数据库维护。DBA 必须对数据库中的数据安全性、完整性、并发控制及系统恢复、数
33、据定期转储等进行实施与维护;改善系统性能,提高系统效率。DBA 必须随时监视数据库的运行状态,不断调整内部结构,使系统保持最佳状态与效率。11.下面的数写成普通十进制数是( )。86787E8(分数:2.00)A.86787000B.867870000 C.8678700D.8678700000解析:解析:浮点数也称为实型数或实数,是带有小数部分的数值。他由 3 部分组成:符号、指数及尾数。例如 123456E3 或 123456E3 的单精度数,这其中的“123456”为尾数部分、“E3”为指数部分(E为符号,3 为指数),相当于 123456 乘以 10 的 3 次幂。本题中是“E8”,那
34、么应该是乘以 10 的 8 次幂,所以选项 B 正确。12.当窗体大小改变时,要使其中的控件也按比例发生变化,应使用窗体的( )。(分数:2.00)A.AutoSize 属性B.Resize 事件 C.AutoRedraw 属性D.Stretch 属性解析:解析:本题考查窗体的属性和事件。窗体没有 Stretch 和AutoSize 属性,窗体的 AutoRedraw 是在窗体上画图时受到影响的属性。如果窗体的大小发生改变,要使窗体上各种控件大小也要随之进行改变,应该编写 Resize 事件。13.以下能正确定义数据类型 SystemInfo 的代码是( )。(分数:2.00)A.Type S
35、ystemlnfo DiskDrives As String*10 Memory As Long End Type B.Type Systemlnfo DiskDrives As String*10 Memory As Long End SystemInfoC.Type Systemlnfo DiskDrives String*10 Memory Long End Type SystemInfoD.TypedefSystemlnfo DiskDrives String*10 Memory Long End Type解析:解析:本题考查自定义类型的定义。自定义类型要求以 Type 开始,以 En
36、d Type 结束,在两者之间包含有各个成员的说明,要求字符串定义为定长字符串,同时每个成员的类型以“As”引出。14.以下能从字符串“VisualBasic”中直接取出子字符串“Basic”的函数是( )。(分数:2.00)A.LeftB.Mid C.StringD.Instr解析:解析:本题考查字符串函数。函数 Left 表示从字符串的左边取连续个字符构成子串。Mid 可以从字符串的任意位置取出子串。String 则返回字符串的第一个字符构成的,含有相同个数字符的子串。Lnstr 为字符串匹配函数。15.设“A“87654321“”,则表达式 Val(Left(A,4)Mid(A,4,2)
37、的值为( )。(分数:2.00)A.876543B.876554 C.8D.6解析:解析:本题考查字符串函数。Mid(A,4,2)表示从字符串 A 中第 4 个字符开始取 2 个字符构成子串;Left(_A,4)表示从 A 左边取 4 个字符构成子串;Val 函数表示将两个字符串连接到一起,构成一个字符串后,将其转化成数值型。16.窗体上命令按钮的事件过程如下: Private Sub Command1_Click() A“34“:B“26“:C“98“ Print BCA End Sub 运行程序后,单击命令按钮,输出结果是( )。(分数:2.00)A.269834B.269834 C.15
38、8D.程序运行出错解析:解析:本题考查字符串运算符。“”操作与字符串运算时为字符串连接运算符。字符串的输出是不加双引号的,但在程序中表示字符串要加上双引号。17.当窗体最小化时缩小为一个图标,设置这个图标的属性是( )。(分数:2.00)A.MouselconB.Icon C.PictureD.MousePointer解析:解析:Mouselcon 属性用于设置自定义的鼠标图标;Icon 属性用于设置窗体最小化时的图标;Picture 属性用于设置在对象中显示一个图形;MousePointer 属性用于设置指示在运行时当鼠标移动到对象的一个特定部分时,被显示的鼠标指针的类型。因此本题选项 B
39、正确。18.假定窗体上有一个标签,名为 Label1,为了使该标签透明并且没有边框,则正确的属性设置为( )。(分数:2.00)A.Label1.BackStyle0 Label1.BorderStyle0 B.Label1.BackStyle1 Label1.BorderStyle1C.Label1.BackStyleTrue Label1.BorderStyleTrueD.Label1.BackStyleFalse Label1.BorderStyleFalse解析:解析:本题考查标签的属性。标签的 BackStyle 属性表示标签的背景是否透明(1 表示不透明,0 表示透明)。标签的 B
40、orderStyle 属性表示是否含有边框(1 表示有边框,0 表示没有边框)。19.在程序运行时,下面的叙述中正确的是( )。(分数:2.00)A.用鼠标右键单击窗体中无控件的部分,会执行窗体的 Form_Load 事件过程B.用鼠标左键单击窗体的标题栏,会执行窗体的 Form_Click 事件过程C.只装入而不显示窗体,也会执行窗体的 Form _Load 事件过程 D.装入窗体后,每次显示该窗体时,都会执行窗体的 Form_Click 事件过程解析:解析:窗体的 Click(单击)事件在程序运行时单击窗体内的某个无其它控件的部位时发生;窗体的Load(装载)事件在一个窗体被装载时发生,常
41、用于在程序启动时对属性和变量进行初始化,该条件与窗体是否显示无关。20.下面的程序执行完毕后,组合框中数据项的值是( )。 Private Sub Form_Click0 For i=1 To 6 Combo1AddItem i Next i For i1 To 3 Combo1Removeltem i Next i End Sub(分数:2.00)A.1 5 6B.1 3 5 C.4 5 6D.2 4 6解析:解析:本题考查组合框的方法。组合框的 AddItem 方法表示把数字 i 加入到组合框,而RemoveItem 方法表示把组合框中第 i 项移出组合框。因此本题首先依次加入 1、2、3
42、、4、5、6;由于组合框下标从 0 开始,所以在第二个循环中首先移除第 1 项,也就是数字 2,接下来移除第 2 项,也就是数字 4,最后移除第 3 项,也就是数字 6,最后组合框中剩下 1、3、5。21.窗体上有 1 个名称为 Text1 的文本框;1 个名称为 Timer1 的计时器控件,其 Interval 属性值为5000,Enabled 属性值是 True。Timer1 的事件过程如下: Private Sub Timer1_Timer() Static flag As Integer If flag0 Then flag1 flagflag If flag1 Then Text1F
43、oreColor&HFF&HFF&为红色 Else Text1ForeColor&HC000&HC000& 为绿色 End If End Sub 以下叙述中正确的是( )。(分数:2.00)A.每次执行此事件过程时,flag 的初始值均为 0B.flag 的值只可能取 0 或 1C.程序有逻辑错误,Else 分支总也不能被执行D.程序执行后,文本框中的文字每 5 秒改变一次颜色 解析:解析:计时器控件(Timer)用来完成有规律性时间间隔执行的任务,Interval 属性用于设置计时器事件之间的间隔,以毫秒为单位。 本题在每 5 秒执行一次的 Timer 事件过程中,通过静态变量 flag 值
44、的交替变换(即1 和 1 之间)来控制文本框中文字的颜色,值为1 时为绿色,值为 1 时为红色。除程序刚启动第一次执行 Timer 事件过程时,静态变量 flag 的初始值为 0 外,其余各次均为1 或 1。22.在窗体上画一个命令按钮,然后编写如下事件过程: Private Sub Command1_Click() x0 do Until X1 aInputBox(“请输入 a 的值“) aVal(a) bInputBox(“请输入 b 的值“) bVal(b) xInputBox(“请输入 x 的值“) xVal(x) aabx Loop Prim a End Sub 程序运行后,单击命令
45、按钮,依次在输入对话框中输入 5、4、3、2、1、1 则输出结果是( )。(分数:2.00)A.2 B.3C.14D.15解析:解析:本题输出变量 a 的值,在每次循环时,都对变量 a、b、x 进行了赋初值,因此只要考虑最后一次循环即可。也就是当输入 a2,b1,x1 时的表达式“aabx”的值,也就是最后 a 的值为 2,所以选项 A 正确。23.下列程序的执行结果为( )。 A“5“:B“6“ AVal(A)Val(B) BVal(“56“) IfAB Then Print AB Else Print BA(分数:2.00)A.45 B.45C.56D.0解析:解析:本题考查转换函数的操作
46、。Val 函数可以把数字字符串转化成数字,然后进行算术运算。因此最后 A 的值为 11,而 B 的值为 56,因此输出 AB 的值为45。24.执行下面的程序段后,变量 S 的值为( )。 S5 For i26 To 49 Step 06 SS1 Next i(分数:2.00)A.10B.8C.9 D.7解析:解析:本题考查 VB 中 For 循环。VB 中循环变量可以为实数,循环变量的初值为 26,终值为49,步长 06。循环的次数为 Int(终值初值)步长),所以进行了 4 次循环,因此最后 s 的值为9。25.数学式子 5(ab)2 对应的 Visual Basic 表达式是( )。(分
47、数:2.00)A.5ab*2B.5(ab)2C.5(ab)*木 2 D.5(ab)*(ab)解析:解析:本题考查数学式与表达式之间的转化。VB 中一个表达式写在同一行,不可以省略运算符。括号必须成对出现。26.假定有以下循环结构 Do Urntil 条件 循环体 Loop 则正确的描述是( )。(分数:2.00)A.如果“条件”是一个为 0 的常数,则一次循环体也不执行B.如果“条件”是一个为 0 的常数,则至少执行一次循环体 C.如果“条件”是一个不为 0 的常数,则至少执行一次循环体D.不论“条件”是否为“真”,至少要执行一次循环体解析:解析:本题考查 DoLoop 循环。DoLoop 循环中,由 Until 引出的循环条件,如果条件不成立,也就是条件为 0 时执行循环,否则退出。27.某人编写如下函数来判断 a 是否为素数,若是,则函数返回 True;否则返回 False。 Function prime(a As Integer)As Boolean Dim k As Integer,isprime As Boolean If a2 Then isprimeFalse Else isprimeTrue k2 Do While ka2 And isprime If a Mod k0 Then isprime False Else kk1 End If Lo