VB模拟试题一、选择题(15分,每题1分)1、VB集成开发环境共有三种模式,以下 __________ 三种模式是正确?(A) 设计、运行、退出 (B)运行、中断、退出(C) 设计、运行、中断 (D)运行、中断、结束2、以下叙述中错误的是__________(A) 事件过程是响应特定事件的一段程序(B) 不同的对象可以具有相同名称的方法(C) 对象的方法是执行指定操作的过程(D) 对象事件的名称可以由编程者指定3、如果一个工程含有多个窗体及标准模块,则以下叙述中错误的是 __________(A) 如果工程中含有Sub Main过程,则程序一定首先执行该过程(B) 不能把含有Sub Main过程的标准模块设置为启动模块(C) 用Hide方法只是隐藏一个窗体,不能从内存中清除该窗体(D) 任何时刻最多只有一个窗体是活动窗体4、下列说法哪种正确?每次调用过程时,__________(A) Dim声明的变量可保持原值;Static声明的变量会重新初始化。
(B) Static声明的变量可保持原值;Dim声明的变量会重新初始化。
(C) Dim、Static声明的变量都可以保持原来的值。
(D) Dim、Static声明的变量都会重新初始化。
5、表达式 5 Mod 3+3\5*2的值是__________(A) 0 (B) 2 (C) 4 (D) 66、从字符串N的第5个字符开始,获取4个字符,应使用 _________。
(A) Len(N,5,4) (B) Mid(N,5,4)(C) Right(N,5,4) (D) Rtrim(N,5,4)7、InputBox函数返回值的类型为 _________。
(A) 数值 (B) 字符串(C) 变体 (D) 数值或字符串(视输入的数据而定)8、语句Dim A(3, -2 to 2, 5)声明的数组A包含_________个数组元素。
(A) 120 (B) 75 (C) 60 (D) 139、执行下面的程序段后,x 的值为_________。
x=0For i=1 To 10 Step 3x=x+iNext i(A) 10 (B) 12 (C) 22 (D) 3010、以下叙述中正确的是_________。
(A) 窗体的Name属性指定窗体的名称,用来标识一个窗体(B) 窗体的Name属性的值是显示在窗体标题栏中的文本(C) 可以在运行期间改变对象的Name属性的值(D) 对象的Name属性值可以为空11、使文本框的ScrollBar(滚动条)属性有效,应将_________ 属性设置为True?(A) Text (B) MutiLine (C) Alignment (D) WordWarp12、下列属性中,图像框(Image)没有_________ 属性。
(A) Stretch (B) Autosize (C) Visible (D) Picture13、设组合框Combo1中有3个项目,则以下能删除最后一项的语句是_________(A) Combo1.RemoveItem Text(B) Combo1.RemoveItem 2(C) Combo1.RemoveItem 3(D) Combo1.RemoveItem Combo1.Listcount14、以下叙述中错误的是_________(A) 下拉式菜单和弹出式菜单都用菜单编辑器建立(B) 在多窗体程序中,每个窗体都可以建立自己的菜单系统(C) 除分隔线外,所有菜单项都能接收Click事件(D) 如果把一个菜单项的Enabled属性设置为False,则该菜单项不可见15、以下关于文件的叙述中,错误的是(A) 顺序文件中的记录一个接一个地顺序存放(B) 随机文件中记录的长度是随机的(C) Put是随机文件的写语句(D) EOF函数可用于判断顺序文件的结束二、填空题(10分,每空1分)1、为使一个控件运行时看不见,应将该控件的_________ 属性设置为_________ 。
2、为使加入到列表框的数据自动排序,应设置该控件的_________ 属性为_________ 。
3、当单击滚动条的箭头时,滚动条的值增(或减)5,则该控件的________ 属性为_________ 。
4、为使计时器控件Timer1每隔0.5秒触发一次Timer事件,应设置该控件的 _________ 属性为 _________ 。
5、图片框的作用是_________ 和 _________ 。
三、按指定要求编写程序段(13分,第1题6分,第2题7分)1、用Do…Loop语句,编写计算1!+2!+…+10! 的程序段。
2、从键盘输入100个学生的考试分数,输出其中的最高分和最低分。
四、写出下列事件过程的执行结果(18分,每题6分)1、Private Sub Form_Click()Const n = 3Dim i As IntegerDim f1 As Long, f2 As Longf2 = 468: f1 = 135For i = 1 To nPrint "f" & 2 * i - 1; "="; f2,Print "f" & 2 * i; "="; f1f2 = f2 - f1f1 = f1 - f2Next iEnd Sub2、Private Sub Form_click()Dim x As Integer, y As Integer, z As Integerx = 2008: y = 2For z = 1 To 3Print "main:"; z, x, yCall test1(x, y)Next zEnd SubPrivate Sub test1(ByVal x As Integer, y As Integer)Static z As Integerx = x + 2: y = y + 2z = z + 5Print "sub:"; z, x, yEnd Sub3、Private Sub Form_Click()Dim a(4, 4) As StringDim i As Integer, j As IntegerDim c As Integer, s As Stringc = 64For i = 1 To 4For j = 1 To 4c = c + 1a(i, j) = Chr(c)Next jNext iFor i = 1 To 4For j = i To 4s = a(i, j)a(i, j) = a(j, i)a(j, i) = sNext jNext iFor i = 1 To 4For j = 1 To 4Print a(i, j);Next jPrintNext iEnd Sub五、填空下列程序,实现各自功能(24分,每空2分)1、利用随机数函数模拟投币,方法是:每次随机产生一个0或1的整数,相当于一次投币,1代表正面,0代表反面。
在窗体上有三个文本框,名称分别是Text1、Text2、Text3,分别用于显示用户输入投币总次数、出现正面的次数和出现反面的次数,如图所示。
程序运行后,在文本框Text1中输入总次数,然后单击“开始”按钮,按照输入的次数模拟投币,分别统计出现正面、反面的次数,并显示结果。
Private Sub Command1_Click()Dim n As IntegerRandomize________(1)________n1 = 0 : n2 = 0For i = 1 To n________(2)________If r = 1 Thenn1 = n1 + 1Else________(3)________End IfNext________(4)________Text3.Text = n2End Sub2、窗体上有一个简单组合框和二个命令按钮。
单击“添加”按钮,将把组合框上部的文本内容添加为组合框列表的首项并清除文本内容,若组合框列表的项数大于8,则删除组合框列表的末项。
单击“删除”按钮,若组合框列表的项数大于4并且有选中的项,则把选中的项删去,否则用 Msgbox 提示“项数小于等于4或无选中的项!”。
Private Sub Form_Load()Dim i As IntegerFor i = 0 To 7Combo1.List(i) = "item" & (8 - i)Next iEnd SubPrivate Sub Command1_Click()________(5)________Combo1.Text = ""If ________(6)________ ThenCombo1.RemoveItem Combo1.ListCount – 1End IfEnd SubPrivate Sub Command2_Click()If Combo1.ListCount > 4 And Combo1.ListIndex <> -1 Then________(7)________Else________(8)________End IfEnd Sub3、单击“打开”命令按钮,可将顺序文件(“d:\test.txt”)的内容逐行输入文本框Text1,并显示输入的行数。
单击“保存”命令按钮,可将TEXT1的内容输出到顺序文件(“d:\test.txt”),并显示输出的行数。
Private Sub Command1_click()Dim s As String, c As IntegerText1 = "" : c = 0________(9)________Do Until EOF(1)Line Input #1, sIf s <> "" Then________(10)________c = c + 1End IfLoopText2 = cClose #1End SubPrivate Sub Command2_click()Dim i As Integer, c As Integerc = 0For i = 1 To _______(11)_______If Mid(Text1, i, 1) = vbCr Then c = c + 1 Next IText2 = c+1Open "d:\test.txt" For Output As #1________(12)________Close #1End Sub。