首页 vbvb考试题25vb复习题2

vbvb考试题25vb复习题2

举报
开通vip

vbvb考试题25vb复习题2 一、选择题 1.Visual basic 采用了__________________编程机制。 A) 面向对象 B)面向过程 C)事件驱动 D)可视化 2._____________版本的Visual basic 6.0 具有其它两个版本的全部功能,它能够开发分布式应用程序。 A)学习版 B)标准版 C)专业版 D)企业版 3.Visual basic不具有以下的_______________特点。 A)Visual basic采用了面向对象的程序设计方法 B)Vis...

vbvb考试题25vb复习题2
一、选择题 1.Visual basic 采用了__________________编程机制。 A) 面向对象 B)面向过程 C)事件驱动 D)可视化 2._____________版本的Visual basic 6.0 具有其它两个版本的全部功能,它能够开发分布式应用程序。 A)学习版 B) 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 版 C)专业版 D)企业版 3.Visual basic不具有以下的_______________特点。 A)Visual basic采用了面向对象的程序设计方法 B)Visual basic是结构化程序设计语言 C)Visual basic采用面向过程的编程机制 D)Visual basic提供了可视化的工具。 4.下列操作不能打开属性窗口的是________________。 A)在对象上单击右键,弹出快捷菜单,选取“属性窗口”菜音项 B)按F4键 C)单击工具栏上的“属性窗口” D)双击对象 5.用户通过__________模拟屏幕的小图像来布置应用程序。 A)窗体设计器 B)快捷菜单 D)立即窗口 D)窗体布局窗口 6.以下不属于Visual basic的三种工作模式的是______________。 A)编辑 B)设计 C)运行 D)中断 6.当将窗体的_____属性设置为False时,将不显示窗体的控制菜单、最大化/最小化及关闭按钮。 A)MaxButton B) MinButton C)ControlBox D) WindowsState 7.如果在运行时不允许移动窗体,可以将窗体的________属性设计为False。 A)BorderStyle B) ControlBox C)Moveable D) WindowsState 8.如果要使窗体的最大化按钮变成灰色(不起作用),应该设置窗体的____属性。 A)Caption B) Icon C) Maxbutton D) MinButton 9.要在窗体上显示图片,需要设计窗体的_________属性。 A)Caption B) Icon C)Picture D) ControlBox 10.如果希望运行时窗体以最大化方式显示,应该设置窗体的______属性。 A)BorderStyle B)ControlBox C)C)Moveable D)WindowsState 11.当将窗体的_____属性设置为False时,运行时窗体上的按钮、文本框等控件就不会对用户的操作做出响应。 A)Enabled B) Visible C) ControlBox D) WindowsState 12.运行时,单击窗体将窗体的前景颜色设置为红色的事件过程是_______。 A)Private Sub Form_Click() Backcolor=vbRed End Sub B) Private Sub Form_Click() Form1.forecolor=vbRed End Sub C) Private Sub Form_Click() Form1.Backcolor=vbRed End Sub D) Private Sub Form_Load() Forecolor=vbRed End Sub 13.假设某一事件的过程如下,则响应该过程的对象名是____B_,事件名是__C___。 Private Sub Mylbl_DblClick() Form1.Caption=”Hello!” End Sub A) Mylbl_Dbl、DblClick B) Mylbl C) DblClick D) Mylbl_Click 14.在设计阶段,双击窗体Form的空白处,打开代码窗口,显示_______事件过程 模板 个人简介word模板免费下载关于员工迟到处罚通告模板康奈尔office模板下载康奈尔 笔记本 模板 下载软件方案模板免费下载 。 A) Form_click B)Form_load C)Load D) Unlosd 10.在运行时,系统自动启动窗体的_________事件过程。 A)Click B) GotFocus C) Load D) Unlosd 11.在属性窗口设置命令按钮的DownPicture属性,指定按下时显示的图形文件,但在运行时按下命令按钮又没有效果,解决的方法是_____________。 A) 命令按钮的Default属性设计为True B) 命令按钮的Style属性设计为2-Picture C) 命令按钮的Style属性设计为0-Standard D) 命令按钮的Style属性设计为1-Graphical 12.如果在设计时在属性窗口中将命令按钮的___________属性设置为False,则运行时按钮将在窗体上消失。 A) Visible B) Enabled C) DisabledPicture D) Default 13.如果在设计时在属性窗口中将命令按钮的___________属性设置为False,则运行时按钮将不起作用。 A) Visible B) Enabled C) DisabledPicture D) Default 14.下列操作不能触发一个命令按钮的Click事件的是________________。 A)在按钮上单击鼠标左键 B)在按钮上单击鼠标右键 C)把焦点移到按钮上,按回车键 D) 使用该按钮的访问键 15.将文本框的__________属性设置为True时,文本框可以输入或显示多行文本,且会自动换行。 A)Multiline B)Sccollbars C)Text D)Enabled 16.如果将passwordChar属性设置为一个字符“*”号,在文本框输入的字符仍然显示出来,而不显示*号,则原因可能是______________。 A)文本框的Multiline属性设置为True B)文本框的Locked属性设置为True C)文本框的Multiline属性设置为False D)文本框的Locked属性设置为False 17.在设计阶段,双击某一文本框,打开代码窗口,显示文本框的_______事件过程模板。 A) click B)DblClick C)Change D) GotFucos 18.在运行阶段,要在文本框Text1获得焦点时选中文本框的所有内容,对应如下的事件过程是_________________。 A)Private Sub Text1_Gotfocus() Ttext1.SelStart=0 Text1.Sellength=Len(Text1.Ttext) End Sub B)Private Sub Text1_Lostfocus() Ttext1.SelStart=0 Text1.Sellength=Len(Text1.Ttext) End Sub C)Private Sub Text1_Change() Ttext1.SelStart=0 Text1.Sellength=Len(Text1.Ttext) End Sub D)Private Sub Text1_Settfocus() Ttext1.SelStart=0 Text1.Sellength=Len(Text1.Ttext) End Sub 19.通过文本框的_______________事件过程可以获得文本框中输入字符的ASCII码值。 A) Change B)Gotfocus C)LostFocus D) Keypress 20.为了在按下ESC键时执行某个命令按钮的事件过程,需要把此命令按钮的___________设置为True。 A)Value B) Default C)Cancel D)Enabled 21.下列_______是日期型常量。 A) “2/1/02” B)2/1/02 C)#2/1/02# D){2/1/02} 22.下面____________不是字符串常量。 A)“你好” B)“ ” C)“True” D)#False# 23.表达式Int(8*sqr(36)*10^(-2)+0.5)/10的值是__________________。 A).48 B).048 C).5 D).05 24.下列符号常量中,______________是不合法的。 A) Const a as Single=1.1 B)Const a as Integer=”12” C)Const a as Double=Sin(1) D)Const a=”OK” 25.系统常量符号的定义可以通过______________获得。 A)对象浏览器 B)代码窗口 C) 属性窗口 D)工具箱 26.要强制显示声明变量,可以在窗体模块或标准模块人声明段中加入语句_________。 A)Option Base 0 B)Option Explicit C)Option Base 1 D)Option Compare 27.假设x=3,y=6,z=5,则表达式(x^2+y)/z是_________________。 A)1 B)5 C)3 D)2.4 28.假设A=3,B=7,C=2,则表达式A>B or B>C的值是_______________。 A)True B)False C)表达式有错 D)不确定 29.产生[10,37]之间的随机整数的Visual Basic表达式是______________。 A)Int(Rnd(1)*27)+10 B)Int(Rnd(1)*28)+10 C)Int(Rnd(1)*27)+11 D)Int(Rnd(1)*28)+11 30.表达式Int(-17.8)+Abs(17.8)是______________。 A)0 B)0.8 C)-0.2 D)-34.8 31.表达式Left(“how are you”,3)的值是_______________。 A)how B)are C)you D)how are you 32.表达式Right(“Beijing”,4) 的值是_______________。 A)Bei B)jing C)eiji D)ijin 33.代数式x1-|a|+ln10+sin(x2+2π)/cos(57o)对应的Visual Basic 表达式是____________。 A)x1-Abs(a)+Log(10)+sin(x2+2*3.14)/cos(57*3.14/180) B)x1-Abs(a)+Log(10)+sin(x2+2*π)/cos(57*3.14/180) C)x1-Abs(a)+Log(10)+sin(x2+2*3.14)/cos(57) D)x1-Abs(a)+Log(10)+sin(x2+2*π)/cos(57) 34.下列数学式的正确VB表达式是____________________。 A)3y+(a+3*x^2+4*x^3)/(1+2*x+x^2)-2*b B)3*y+(a+3*x^2+4*x^3)/(1+2*x+x^2)-2b C)3*y+(a+3*x^2+4*x^3)/1+2*x+x^2-2*b D)3*y+(a+3*x^2+4*x^3)/(1+2*x+x^2)-2*b 35.语句x=x+1的正确函义是________________。 A)变量X与X+1的值相等 B) 将变量X的值存到X+1中去 C)将变量X的值加1后赋给变量X D)变量X的值为1 36.如果将布尔常量True赋给一个整型变量,则整型变量的值为_______。 A)0 B)-1 C)True D)False 37.变量未赋值时,整型变量的值为_A_,字符型变量的值为__B__。 A)0 B)空串“ “ C)Null D)没有任何值 38.InputBox函数的返回值为__________。 A)数值 B)字符串 C)变体 D)数值与字符串(视输入数据而定) 39.以下_______程序段可以实现变量X与Y的值互换。 A)Y=X:X=Y B)Z=X:Y=Z:X=Y C)Z=X:X=Y:Y=Z D)Z=X:W=Y:Y=Z:X=Y 40.以下程序段的执行结果是______________。 X=2 Print X+1:X+1 A)3 3 B)X+1 X+1 C)3 4 D)2+1 2+1 41.下列程序的执行结果是__________。 X=0 Print X-1 X=3 A)-1 B)3 C)2 D)0 42.以下叙述不正确的是_____________。 A)注释语句是非执行语句,仅对程序的有关内容起注释作用,它不被解释和编译 B)注释语句可以放在代码的任何位置 C)注释语句不能放在续行符(VB续行符是空格后跟一下划线)的后面 D)代码中加入注释语句的目的是为了提高程序的可读性 43.下列程序段的执行结果为_________。 X=1:y=2 Z=x=y Print x;y;z A)1 1 2 B)1 1 1 C)False False 1 D)1 2 False 44.以下程序在窗体上输出__B_,在图片框中输出__A_,在立即窗口中输出__C_。 A=“your” B=“sname” C=“isc” Print right(A,3) Picture1.Print Mid(B,2,4) Debug.Print Left(C,2) A)Name B)our C)is D)ournameis 45.设变量a和b的值分别为153和-45,则Debug.print a;b的输出结果为___。 A)□153□-45 □ B)153□-45 C)□153□□-45 □ D)□153□-45 46.Print sgn(-6^2)+abs(int(-234.12))的输出结果为________。 A)-300 B)300 C)256 D)234 47.Print Format(Abs(-3 ^ 2) + 32.5, "$$####,##.000")的输出结果为_____。 A)$$41.500 B)$$41.5 C)$000041.5000 D)$$000041.5000 48.如下程序运行时,在两个输入对话框中分别输入123和456,则程序的输出结果为_________。 Private Sub Form_Click() x = InputBox("输入第一个数据", "输入数据") y = InputBox("输入第二个数据", "输入数据") Print x + y End Sub A)123456 B)123 C)579 D)456 49.计算分数函数: 下列程序段中正确的是_____________. if x<0 then y=0 if x<1 then y=1 if x<2 then y=2 if x>=2 then y=3 if x>=2 then y=3 if x<1 then y=2 if x>=0 then y=1 if x<0 then y=0 C) If x<0 then Y=0 Elseif x>=0 then Y=1 Elseif x>=1 then Y=2 Else Y=3 Endif D) If x>=2 then Y=3 Elseif x>=1 then Y=2 Elseif x>=0 then Y=1 Else Y=0 End if 50.计算分段函数: 下列程序段中正确的是_____________. A) Select case x Case x<0 Y=0 Case x>=1 and x<1 Y=1 Case x>=1 and x<2 Y=2 Case else Y=3 End select B) Select case x Case x<0 Y=0 Case x<1 Y=1 Case x<2 Y=2 Case else Y=3 End select C) Select case x Case is<0 Y=0 Case is<1 Y=1 Case is<2 Y=2 Case else Y=3 End select D) Select case x Case is<0 Y=0 Case is<1 Y=1 Case is<2 Y=2 Case else Y=3 End select 51.下列程序的执行结果是________. J1=10 J2=30 If j1b then print a-b else print b-1 A)-9 B) 9 C) 12-12 D)0 53. 下列程序的执行结果是________. A=”abcd” B=”bcde” E=right(a,3) F=mid(b,2,3) If e 0 Then x = y - 3 Else y = x + 3 Print x - y; y - x End Sub A)-3 3 B) 5 -8 C)3 -3 D)25 -25 57 .执行语句a=iif(5>10,1,-1)后,变量a的值为__________. A)5 B)10 C)1 D)-1 58.下列程序的执行结果是_________。 Private Sub Form_Click() x = 1 y = 1 For i = 1 To 3 f = x + y x = y y = f Print f; Next i End Sub A)2 3 6 B)2 2 2 C)2 3 4 D)2 3 5 59.下列程序的执行结果是_________。 Private Sub Form_Click() i = 4 a = 5 Do i = i + 1 a = a + 2 Loop Until i >= 7 Print "i="; i Print "a="; a End Sub A) I=4 A=5 B) I=7 A=23 C) I=8 A=7 D) I=7 A=11 60.下列程序的执行结果是_________。 Private Sub Form_Click() n = 0 j = 1 Do Until n > 2 n = n + 1 j = j + n * (n + 1) Loop Print n; j End Sub A)0 1 B)3 7 C)3 21 D)3 13 61.下列程序的执行结果是_________。 Private Sub Form_Click() n = 0 For i = 1 To 3 For j = 5 To 1 Step -1 n = n + 1 Next j, i Print n; j; i End Sub A)12 0 4 B)15 0 4 C)12 3 1 D)15 3 1 62.下列程序的执行结果是_________。 Private Sub Form_Click() k = 0 For j = 1 To 2 For i = 1 To 3 k = i + 1 Next i For i = 1 To 7 k = k + 1 Next i Next j Print k End Sub A)10 B)6 C)11 D)16 63.对于下面结构的循环语句,叙述正确的是________。 Do until 条件 循环体 Loop A)如果条件是一个为0的常数,则不执行循环体 B)如果条件是一个为0的常数,则至少一次执行循环体 C)如果条件是一个不为0的常数,则至少一次执行循环体 D)不论条件是否为真,至少至少执行一次循环体 64.下列程序的执行结果是_________。 Private Sub Form_Click() Dim m As Integer, n As Integer, j As Integer, k As Integer n = 0 For m = 1 To 3 For j = 1 To m For k = 1 To 3 n = n + 1 Next k, j, m Print n End Sub A)6 B)10 C)18 D)21 65.如下程序的print i*j的执行次数是________。 Private Sub Form_Click() Dim i As Integer, j As Integer, n As Integer i = 1 n = 0 Do While i < 4 i = i + 1 For j = 5 To 1 Step -1 Print i * j; n = n + 1 Next j Print Loop Print n End Sub A)15 B) 16 C)17 D)18 66.下列程序的执行结果是_________。 Private Sub Form_Click() Dim k As Integer, n As Integer, m As Integer k = 1: m = 1: n = 10 Do While k <= n m = m * 2 k = k + 1 Loop Print m End Sub A)20 B)1 C)1024 D)200 67.下列程序的执行结果是_________。 Private Sub Form_Click() Dim x As Integer, y As Integer x = 1 For y = 1 To 50 If x >= 10 Then Exit For End If If x Mod 2 = 1 Then x = x + 5 Else x = x - 3 End If Next y Print x End Sub A)4 B)6 C)8 D)10 68.下列程序的执行结果是_________。 Private Sub Form_Click() Dim i As Integer, j As Integer, s As Integer For i = 6 To 5 Step -1 s = 0# For j = i To 4 Step -1 s = s + i * j Next j Next i Print s End Sub A)90 B)45 C)135 D)60 69.下列程序的执行结果是_________。 Private Sub Form_Click() Dim k As Integer, c As String * 1 k = 0: c = "A" Do Select Case c Case "A" k = k + 1 Case "B" k = k - 1 Case "C" k = k + 2 Case "D" Case "E" k = k * 2 Case Else k = k / 3 End Select c = Chr(Asc(c) + 1) k = k + 1 Loop While c < "F" Print k End Sub A)2 B)5 C)6 D)13 70.语句dim a(3,4,5)定义的数组中包含的数据元素的个数量为________。 A)12 B)60 C)120 D)345 71.设有数组声明语句: Option base 0 Dim b(-1 to 10,2 to 9,20) as integer 则数组B中共有__________个元素。 A)1700 B)1747 C)2016 D)2310 72.以下说法不正确的是__________。 A)使用Redim语句可以修改数组的维数 B)使用Redim语句可以改变数组的类型 C)使用Redim语句可以改变数组的每一维的大小 D)使用Redim语句可以对数组中的所有元素进行初始化 73.设用复制、粘贴的方法建立了一个命令按钮数组command1,以下对该数组的说法错误的是_________。 A)命令按钮的所有Caption属性都是command1 B) 在代码中访问任何一个按钮只需要使用数组名称command1 C)命令按钮的大小写都相同 D)命令按钮共享相同的事件过程 74.下列程序的执行结果为_________。 Private Sub Form_Click() Dim M(10) For i = 0 To 10 M(i) = 2 * i Next i Print M(M(3)) End Sub A)12 B)6 C)0 D)4 75.下列程序的执行结果为_________。 Private Sub Form_Click() Dim a(5) For i = 1 To 5 a(i) = i * i Next i Print a(i - 1) End Sub A)5 B)25 C)0 D)16 76.下列程序的执行结果为_________。 Option Base 0 Private Sub Command1_Click() Dim a a = Array("a", "b", "c", "d", "e", "f", "g") Print a(1); a(3); a(5) End Sub A)abc B)bdf C)ace D)错误 77.下列程序的执行结果为_________。 Private Sub Form_Click() Dim a(1 To 20) As Integer For k = 1 To 20 a(k) = k * k Next k Print a(k) End Sub A)400 B)20 C)441 D)出错 78.下列程序的执行结果为_________。 Private Sub Command1_Click() Dim m(1 To 10) As Integer, k As Integer For k = 1 To 10 m(k) = 11 - k Next k For k = 1 To 10 Print m(m(k)); Next k End Sub A)10 9 8 7 6 5 4 3 2 1 B)1 3 5 7 9 2 4 6 8 10 C)2 4 6 8 10 1 3 5 7 9 D)1 2 3 4 5 6 7 8 9 10 79.下列程序的执行结果为_________。 Option Base 1 Private Sub Command1_Click() Dim x As Variant Dim s As Integer, j As Integer s = 0: j = 1 x = Array(1, 2, 3, 4, 5) For i = 4 To 1 Step -1 s = s + x(i) * j j = j * 10 Next i Print s End Sub A)1234 B)4321 C)12 D)34 80.下列程序的执行结果为_________。 Option Base 1 Private Sub Command1_Click() Dim x() As Integer Dim m As Integer, n As Integer, k As Integer m = Val(InputBox("请输入m的值")) n = Val(InputBox("请输入n的值")) ReDim x(m To n) For k = LBound(x, 1) To UBound(x, 1) x(k) = k * k Print x(k) Next k End Sub 程序运行时m和n分别输入的是5和5,则输出结果为: A)5 B)25 C)出错 D)没有输出 81.下列程序段运行后,元素x(3,4)的值为 __________。 Private Sub Command1_Click() Dim x(3, 5) As Integer, i As Integer For i = 1 To 3 For j = 1 To 5 x(i, j) = x(i - 1, j - 1) + i + j Next j Next i Print x(3, 4) End Sub A)12 B)13 C)14 D)15 82.要想在过程调用后两个结果,下面的过程定义合法的语句是________. A) Sub proc1(byval m) B) Sub proc1(n,byval m) C) Sub proc1(n,m) D) Sub proc1(byval n,m) 83. 在参数传递过程中,使用关键字_______来修饰参数,可以使之按传递. A)byval B)by C)value D) reference 84. 下面程序的执行结果是________. Private Function firproc(x As Integer, y As Integer, z As Integer) firproc = 2 * x + y + 3 * z End Function Private Function secproc(x As Integer, y As Integer, z As Integer) secproc = firproc(z, x, y) + x End Function Private Sub Command1_Click() Dim a As Integer, b As Integer, c As Integer a = 2: b = 3: c = 4 Print secproc(c, b, a) End Sub A)21 B)18 C)17 D)34 85.下面程序的执行结果是________. Public Function myfunc(m As Integer, n As Integer) As Integer Do While m <> n Do While m > n: m = m - n: Loop Do While m < n: n = n - m: Loop Loop myfunc = m End Function Private Sub Command1_Click() Print myfunc(24, 18) End Sub A)2 B)4 C)6 D)8 86.在代码中定义了一个子过程: Sub P(a,b) … End Sub 以下调用正确的是____________。 A)Call p B)Call p 10,20 C)Call P(10,20) D)p(10,20) 87.以下程序的执行结果为__________________。 Sub s(x As Single, y As Single) t = x x = t / y y = t Mod y End Sub Private Sub Command1_Click() Dim a As Single Dim b As Single a = 5: b = 4 s a, b Print a, b End Sub A)5 4 B)1 1 C)1.25 4 D)1.25 1 88.以下程序的执行结果为__________________。 Function func(ByVal x As Integer, y As Integer) y = x * y If y > 0 Then func = x Else func = y End If End Function Private Sub Command1_Click() Dim a As Integer, b As Integer a = 3 b = 4 c = func(a, b) Print "a="; a Print "b="; b Print "c="; c End Sub A) A= 3 B= 12 C= 3 B) A= 3 B= 4 C= 3 C) A= 3 B= 4 C= 12 D) A= 3 B= 12 C= 12 89.以下程序的执行结果为__________________。 Private Sub Form_Click() Dim i As Integer s = 0 For i = 1 To 5 s = s + f(i) Next Print s End Sub Function f(n As Integer) As Integer f = n - 1 End Function A)11 B)10 C)9 D)8 90. 以下描述中正确的是_______________。 A)标准模块中的任何过程都可以在整个工程范围内被调用 B)在一个窗体模块中可以调用在其它窗体中被定义为Public的通用过程 C)如果工作中包含Sub Main过程,则程序一定首先执行第一个建立的窗体 D)如果工作中不包含Sub Main过程,则程序一定首先执行第一个建立的窗体 91.设已经在窗体画好一个容器控件,要在容器中建立一个命令按钮组,以下操作正确的是______. A)逐次单击工具中,再在容器中画出按钮; B)在容器上画出按钮,选择按钮,复制,粘贴,并创建控件数组,再重复粘贴 C) 在容器上画出按钮,选择按钮,复制,再选择容器,粘贴,并创建控件数组,再重复粘贴 D)在容器上画一个按钮,按下Ctrl同时拖动按钮到容器中的另一个位置. 92.运行时,要向图片框p1中加载”c:\windows\clouds.bmp”图形文件,应该使用语句________. A) picture1.picture=”c:\windows\clouds.bmp” B) picture1.picture=loadpicture(c:\windows\clouds.bmp) C) p1. picture=loadpicture(c:\windows\clouds.bmp) D) p1. picture=loadpicture(“c:\windows\clouds.bmp”) 93.运行时,要在图片框p1中打印字符串”How are you”,应该使用语句_________. A) picture1.print “How are you” B) p1.picture1.loadpicture(“How are you”) C) p1.print “How are you” D) print “How are you” 94.以下以下选项按钮的说法,正确的是____________. A) 选项按钮的Enabled属性用于决定该按钮是否被选中 B) 选项按钮的value 属性用于决定该按钮是否被选中 C) 选项按钮的checked 属性用于决定该按钮是否被选中 D) 选项按钮的visible 属性用于决定该按钮是否被选中 95.如果有三个按钮画在窗体上,另有四个按钮画在框架中,则运行时可以同时选定几个选项按钮. A)1 B)2 C)3 D)4 96.以下关于复选按钮正确的说法是____________. A)按钮的Enabled属性用于决定该按钮是否被选中 B)按钮的value 属性用于决定该按钮是否被选中 C)按钮的checked 属性用于决定该按钮是否被选中 D)按钮的visible 属性用于决定该按钮是否被选中 97.下列_______程序段能删除列表框list中的所有项. A) Private Sub Command1_Click() For i = 0 To List.listcount - 1 List1.RemoveItem 1 Next I B) Private Sub Command1_Click() For i = 0 To ListCount - 1 List1.RemoveItem 0 Next I End Sub C) Private Sub Command1_Click() For i = 0 To List1.ListCount List1.RemoveItem 1 Next i End Sub D) Private Sub Command1_Click() For i = 0 To List1.ListCount - 1 List1.RemoveItem 0 Next i End Sub 98.要选择列表框list1的第6项,可以使用的语句是____________. A)Private Sub List1_Click() List1.Selected(6) = True Label1.Caption = List1.Text End Sub B)Private Sub List1_Click() List1.Selected(9) = True Label1.Caption = List1.Text End Sub C)Private Sub List1_Click() List1.Selected = 6 Label1.Caption = List1.Text End Sub d) Private Sub List1_Click() List1.listindex = 6 Label1.Caption = List1.Text End Sub 99.要清除组合框combo1中的所有内容,可以使用_______语句。 A)Private Sub Command1_Click() Combo1.cls End Sub B)Private Sub Command1_Click() Combo1.Clear End Sub C)Private Sub Command1_Click() Combo1.delete End Sub D)Private Sub Command1_Click() Combo1.remove End Sub 100.timer控件的_______属性决定该控件是否对时间的推移作出响应。 A)Enabled B)Visible C)time D)capable 101.下列控件中,__________控件不能改变大小。 A)picture B)Image C)scrollbar D)Timer 102.若要在列表框中显示多列数据,可用列表框的____属性来实现。 A)MulitiSelect B)Index C)columns D) List 103.下列叙述不正确的是__________。 A)驱动器列表框是一种能显示系统中所有有效磁盘驱动器的列表框 B)驱动器列表框的Driver属性只能在运行时被设置 C)从驱动器列表框选择驱动器能自动变更系统当前的工作驱动器 D)要变更系统当前的工作驱动器需要使用chDrv语句 104.改变驱动器列表框的Driver属性将激活_____事件。 A)Change B)Scroll C)KeyDown D)KeyUp 105.下列操作不能向工程中添加窗体的命令是___________. A) 执行工程菜单中的添加窗体命令 B) 单击工具栏上的添加窗体 C) 右击窗体,在弹出的菜单中选择“添加窗体”命令 D) 右击工程资源管理器,在弹出的菜单中选择“添加命令”,然后在下一级菜单中选择“添加窗体”命令 106.在一个工程中含有多个窗体时,其中的启动窗体是___________。 A)第一个添加的窗体 B)启动VB时建立的窗体 C)最后一个添加的窗体 D)在“工程属性”指定的窗体 107.设有一个工程文件,包含form1、model1、model2等模块。在form1的通用部分声明一个变量Public x as Integer,form1中包含若干事件过程和一个通用过程Getfile,以下关于X的作用域的描述中正确的是____________。 A)在model1中可以使用X B)X的作用范围不包含Form1中的Getfile C)X的作用范围是Form1 D)X的作用范围是整个工程 108.以下关于VB模块的描述中正确的是_____________。 A)标准模块的所有过程可以在整个工程文件的范围内被调用 B)窗体模块Form1中的过程可以调用其它窗体中被声明为Public的过程 C)如果工程文件中包含Sub main过程,则运行该工程时,一定先执行Sub main过程 D)如果工程文件中不包含Sub main过程,则程序从第一个创建的窗体验生活开始运行 109.关于多重窗体应用程序,以下叙述中不正确的是_____________。 A)对于多重窗体应用程序,可以有多个当前窗体 B)多重窗体应用程序的启动窗体可以在设计时指定 C)多重窗体应用程序中每个窗体作为一个磁盘文件保存,所有窗体、标准模块等作为一个工程文件保存 D)多重窗体应用程序中可以编译生成一个exe文件 110. 设在窗体Form1上加一通用框控件commandialog1,则语句commandialog1.Action=3 的作用是______________. A) 建立打开文件对话框 B) 建立保存文件对话框 C) 建立颜色对话框 D) 建立字体对话框 111. 设在窗体Form1上加一通用框控件commandialog1,则语句commandialog1.Action=4 的用的功能等价的是______________. A)commandDialog1.showopen B)commandDialog1.showsave C)commandDialog1.showColor D)commandDialog1.showfont 112. 设在窗体Form1上加一通用框控件commandialog1,将其filter属性和FilterIndex属性设计为: commanddialog1.Filter=”All Files|*.*|Bitmap Files|*.bmp|JPEG Files|*.jpg|ICO Files|*.ico” commanddialog1.FilterIndex=2 commanddialog1.showopen 则显示出来的打开文件对话框中,在文件类型框中显示________。 A)All Files B)Bitmap Files C)JPEG Files D)ICO Files 113.设在窗体Form1上加一通用框控件commandialog1,用语句commandialog1.showopen建立打开文件对话框,则从该文件对话框中按“确定”按钮退出时,要得到用户所选择的文件的路径僦文件名时,应该使用commanddialog1的哪个属性__________。 A)DefaultEXT属性 B)DialogTitle属性 C)FileName属性 D)FileTitle属性 114.设在窗体Form1上加一通用框控件commandialog1,要建立保存文件对话框,则应该将commandialog1的Action属性设置为____________. A)1 B)2 C)3 D)4 115. 设在窗体Form1上加一通用框控件commandialog1,要建立保存文件对话框,使对话框的标题属性为“保存文件”,则应该对commandialog1的哪些个属性进行设置________。 A)DefaultEXT属性 B)DialogTitle属性 C)FileName属性 D)FileTitle属性 116. 在打开文件对话框中,如果单击取消按钮退出对话框,则其Filename属性取值为_______。 A)系统默认的当前路径 B)系统默认的当前盘 C)空字符 D)系统默认的当前文件名 117. 设在窗体Form1上加一通用框控件commandialog1,利用它建立一个打开文件对话框央对话框中选择了“D:\Myfolder\text\text1.txt”,并单击确定按钮退出对话框,则commandialog1的Filetitle属性为_______________。 A)空字符 B)D:\Myfolder\text\ C)text1.text D)D:\Myfolder\text\text1.txt 118. 用于显示弹出式菜单的方法名是_____________。 A)Showpopup B)ShowpopupMenu C)popupMenu D)ShowMenu 119. 用于动态地在菜单项增加菜单项的语句是___________。 A)Load B)Unload C)LoadMenu D)UnloadMenu 120.要把一个名称为mnuFont的菜单项设置为不可见的语句是____________。 A)mnuFont.checked=True B)mnuFont.Enabled=True C)mnuFont.Visible=False D)mnuFont.Caption=False 121.以下不是菜单编辑窗口的组成部分的是___________。 A)菜单项显示区 B)菜单属性设置区 C)编辑区 D)菜单代码编辑 122.编写如下事件过程: Private Sub Form_KeyPress(KeyAscii As Integer) Print Chr(KeyAscii); Print (KeyAscii) End Sub 运行程序时按下“a”键,则输出结果为__________。 A)A 65 B)a 97 C)65 A D)65 a 123.窗体上画一个命令按钮和一个文本框,并把窗体的KeyPreview属设置为true,编写如下事件代码: Dim all As String Private Sub Command1_Click() Text1.Text = UCase(all) End Sub Private Sub Form_KeyPress(KeyAscii As Integer) all = all + Chr(KeyAscii) End Sub 程序运行后,把焦点放入text1,输入“Hello”,单击命令按钮,则文本框显示为__________。 A) HELLO B) Hello C)不显示任何信息 D)出错 124.如下事件过程运行时按下“E”键,输出的结果是____________。 Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) Print Chr(KeyCode); Print KeyCode End Sub A)E 69 B)e 69 C) 69 E D)69 e 125.将窗体的keypreview设置为true,运行如下事件过程 按下“a”,则输出为________。 Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) Print Chr(KeyCode); End Sub Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer) Print Chr(KeyCode + 32) End Sub A)Aa B) AA C)aa D)aA 126.运行如下程序时按下“A”键时,输出为______________。 Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer) KeyCode = KeyCode + 32 Print UCase(Chr(KeyCode)) End Sub A)A B)65 C)a D) 97 127.运行如下程序时,为了在窗体输出“BBBB”,则应该执行的操作为_________。 Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) If Shift = 3 And Button = 2 Then Print "BBBB" End If End Sub A)同时按下鼠标左键和shift键 B)同时按下鼠标右键和shift键 C)同时按下Ctrl、Alt和鼠标左键 D)同时按下Ctrl、Alt和鼠标右键 128.运行如下程序,当鼠村在窗体左击三次,右击一次,再单击按钮,则输出为__________. Dim sum As Integer Private Sub Command1_Click() Print sum End Sub Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) If Button = 1 Then sum = sum + 1 ElseIf Button = 2 Then sum = sum - 1 End If End Sub A)1 B)-1 C)2 D)4 129.运行如下程序,当同时按下shift 键和Alt键并用鼠标左击时,输出“HELLO”,请造反程序中的shift和Button的值__________。 Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) If Shift = 5 And Button = 1 Then Print "HELLO" End If End Sub A)1 3 B)2 1 C)3 2 D)5 1 130.在某个程序中,想要把鼠标光标变为沙漏形状,mousepointer的值为__________。 A)1 B)2 C)14 D)11 131.在VB中按文件的访问方式不同,可以将文件分为____________。 A)顺序文件、随机文件和二进制文件 B)文本文件和数据文件 C)数据文件和可执行文件 D)ADCII文件和二进制文件 132.执行语句Open “c:\stuDatu.dat” for Input as #1后,系统____________。A)将C盘当前文件夹下名为stuDatu.dat的文件读入内存 B)在C盘当前文件夹下建立名为stuDatu.dat的文件 C)将内存数据放在C盘前文件夹下名为stuDatu.dat的文件中 D)将鞭个磁盘文件的内容写入C盘前文件夹下名为stuDatu.dat的文件中 133.如果在C盘当前文件夹下建立了名为stuDatu.dat的文件,那么执行语句Open Open “c:\stuDatu.dat “for Append as #1后将____________。 A)删除文件中的原有内容 B)保留文件原有内容,在文件尾添加新内容 C)保留文件原有内容,在文件头添加新内容 D)以上均不对 134.随机文件用__________语句写数据,使用_________读数据。 A)input B)write# C)put# D)input# E)Get 135.要读出顺序文件temp.txt的内容,下列打开方式中__________是正确的。 A)open “temp.txt” for append As #1 B)open “temp.txt” for random As #1 C)open “temp.txt” for output As #1 D)open “temp.txt” for input As #1 136.下列_________语句或函数,不能读出顺序文件的内容 A)Get # B)Line Input# C)Input # D)Input() 137.下列_________语句或函数,可以读出随机文件的数据。 A)input # 文件句柄号,变量名列表 B)write # 文件句柄号,表达式列表 C)Put # 文件句柄号,变量名 D)get# 文件句柄号,变量名 138.下列叙述中错误的是__________。 A)顺序打开文件后,文件中的数据即可以读也可以写 B)顺序打开文件后,文件中的数据只能读或只能写 C)随机打开文件后,文件中的数据即可以读也可以写 D)顺序文件和随机文件的打开都使用open语句 139.在随机文件中,每条记录必须_______。 A)内容不一样 B)长度不一样 C)长度相等 D)排序 140.下列命令中________可以实现对顺序文件的写操作。 A)Print B)Line Input C)Input D)Put 141.默认的坐标系统ScaleMode的属性_________?ScaleMode的自定义属性值为_________? A)0,1 B)1,0 C)1,3 D)0,3 142.图形容器在运行时才能设置和访问的两个专用属是______________. A) ScaleMode和DrawMode B) X和 Y C) CurrentX和CurrentY D) DrawStyle和DrawMode 143.要在Picture1对象中绘制一个红色的实心矩形,可以使用下面的_________语句,(x1,y1)和(x2,y2)为矩形的对角坐标。 A)Line((x1,y1)-(x2,y2) B) picture1. Line((x1,y1)-(x2,y2),RGB(255),BF C)picture1. Line((x1,y1)-(x2,y2),RGB(255,255,255),B,F D)picture1. Line((x1,y1)-(x2,y2),RGB(255,255,255),B[F] 144.执行下列语句:Circle(100,100),50.QBColor(04),-3.14/6,-2*3.14/3绘制的图形为________。 A)圆 B)圆弧 C)椭圆 D)扇形 145.要在Picture1对象中绘制一个红色的实心椭圆,应该在Circle语句前先执行下面_________语句。 A)FillColor=RGB(255,0,0):FillStyle=0 B)FillColor=RGB(255,0,0):FillStyle=1 C)FillStyle=1 :FillColor=RGB(255,0,0) D)FillStyle=0: FillColor=RGB(255,0,0) 146.坐标度量单位可以通过___________来改变。 A)DrawStyle属性 B)DrawWidth属性 C)ScaleWidth属性 D)ScaleMode属性 147.以下属性和方法中__________可以重新定义坐标。 A)DrawStyle属性 B)DrawWidth属性 C)Scale方法 D)ScaleMode属性 148.当使用Line方法画直线后,当前坐标在___________。 A)(0,0) B)直线起点 C)直线终点 D)容器的中心 149.当窗体的Autoredraw属性菜用默认值时,若在窗体载入时使用绘图方法绘制图形,则应该放在___________。 A)paint事件B)Load事件 C)Initialize事件 D)Click事件 150.当对DrawWidth设置后,将影响___________。 A)Line 、Circle、 Pset方法 B)Line、 Shape方法 C) Line 、Circle、 Point方法 D) Line 、Circle、 Pset方法和 line、 Shape控件 二、填空题 1.假设某一过程如下: Private Sub cmd1_Click() Form1.Caption=”VB示例” End Sub 则响应该过程的对象名是cmd1,事件名是Click(单击)。 2.假设一个文本框的Name属性为Text1,为了在该文本框中显示“Hello”,所使用的语句为Text1.text=“Hello”。 3.一个工程文件包括多种类型的文件,其中,扩展名为.VBP文件表示工程文件;扩展名为.Frm的文件表示窗体文件;扩展名为.Bas的文件表示标准模块文件;包含ActiveX的文件的扩展名为.OCX。 4.闰年的条件是:年号(Y)能被4整除,但不能被100整除;年号能被400整除,表示该条件的布尔表达式是y mod 4=0 and y mod 100<>0 or y mod 400=0。 5.写出一元二次方程有实根的布尔表达式为a<>0 and b*b-4*a*c>=0。 6.表示条件:变量x能被5整除的偶数的布尔表达式是x mod 5=0 and x mod 2=0。 7.写出下面Format 函数的值: Format (5459.4,”##,##0.00):5,459.40 Format(334.9,” #### “): 335 Format(0.6725,”0.00”):0.67 Format(0.6725,”#.00”):.67 Format(“HELLO”,”<”):hello 8.交换两个变量的值显示在立即窗口中。 Private Sub Form_Load() Dim a As Double, b As Double, c As Double a = Val(InputBox("输入a")) b = Val(InputBox("输入b")) t = a: a = b: b = t Debug.Print a Debug.Print b End Sub 9.输出实数的平方及平方根,保留3位小数,数据之间有间隔。 Private Sub Form_Click() Dim a As Single a = Abs(InputBox("输入a")) Print Format(a * a, "0.000"); Format(Sqr(a), " 0.000") Print x + y End Sub 10.以下程序用于判断输入的年份是否是闰年. Private Sub Command1_Click() y = InputBox("请输入年份") If y Mod 400 = 0 Or y Mod 4 = 0 And y Mod 100 <> 0 Then Print y & "是闰年" Else Print y & "不是闰年" End If End Sub 11.下面的程序用于求输入的三个数中的最大数和最小数. Private Sub Command1_Click() a = InputBox("请输入第一个数:") b = InputBox("请输入第二个数:") c = InputBox("请输入第三个数:") Max = a Min = a If b > Max Then Max = b If b < Min Then Min = b If Max < c Then Max = c If Min > c Then Min = c Print "max="; Max Print "min="; Min End Sub 12.以下程序判断从文本框text1中输入的数据,如果该数据满足如下条件:除3余2,除5余3,除7余4,则输出之.否则将焦点定位在文本框中,选中其中的文本. Private Sub Command1_Click() x = Val(Text1.Text) If x Mod 3 = 2 And x Mod 5 = 3 And x Mod 7 = 4 Then Print x Else Text1.SetFocus Text1.SelStart = 0 Text1.SelLength = Len(Text1.Text) End If End Sub 13.计算下面的函数. Private Sub Command1_Click() x = Val(Text1.Text) Select Case x Case Is > 200, Is < -100 Print "x<-100 or x>200" Case -100 To 0 y = 100 - x Case 0 To 100 y = 100 + x Case 100 To 200 y = 400 End Select Text1.Text = y End Sub 14.搬砖问题:36块砖,男的搬4块,2个小孩抬一块,女的搬3块,要求一次搬完,需要多少人。 Private Sub Command1_Click() For male = 1 To 9 For female = 1 To 12 For boy = 2 To 72 Step 2 If boy + female + male = 36 And male * 4 + female * 3 + boy * 1 / 2 = 36 Then Print male, female, boy End If Next boy Next female Next male End Sub 15.以下程序用于计算N=1+(1+3)+(1+3+5)+ (1+3+5+…+39) Private Sub Command1_Click() t = 0 m = 1 Sum = 0 Do t = t + m Sum = Sum + t m = m + 2 Loop While m <= 39 Print "sum="; Sum End Sub 16.以下程序求12-23+32+…+(n-1)2-n2 Private Sub Command1_Click() n = Val(InputBox("请输入大于0的偶数N:")) s = 0 i = 1 c = -10 Do c = -c: s = s + i * c + Sgn(c) * 2 i = i + 1 Loop While i <= n Print "s="; s End Sub 17.以下程序用于在文本框text1中输入3——100之间的全部素数。 Private Sub Command1_Click() Text1.Text = "" For n = 3 To 100 k = Int(Sqr(n)) i = 2 flag = 0 Do While i <= k And flag = 0 If n Mod i = 0 Then flag = 1 Else i = i + 1 Loop If flag = 0 Then Text1.Text = Text1.Text & Str(n) & Chr(13) & Chr(10) End If Next n End Sub 18.以下程序用于输出20个在开区间(10,87)中的随机整数R,每行5个数。 Private Sub Command1_Click() For i = 1 To 20 r = Int(10 + Rnd * 77) Print r; If i Mod 5 = 0 Then Print Next i End Sub 19.以下程序是把100个元素:A按每行10个数的形式赋给数组B,即a(1)——a(10)依次赋给B(1,1)——B(1,10),…… Private Sub Command1_Click() Dim a(1 To 100) As Integer, b(1 To 10, 1 To 10) As Integer For i = 1 To 100 a(i) = Int(Rnd * 5 + 1) Next i For i = 1 To 10 For j = 1 To 10 b(i, j) = a((i - 1) * 10 + j) Next j Print Next i For i = 1 To 100 Print a(i); If i Mod 10 = 0 Then Print Next i Print For i = 1 To 10 For j = 1 To 10 Print b(i, j); Next j Print Next i Print End Sub 20.以下程序是将整型动态数组X声明为具有20个元素的数组,并给所有元素赋值为1。 Dim x() As Integer Private Sub Command1_Click() ReDim x(1 To 20) For i = 1 To 20 x(i) = 1 Print x(i) Next i 21.以下程序产生100个1——4之间的随机整数,并进行统计。数组元素s(i)(i=1,2,3,4)表示等于i的随机整数的个数。 Private Sub Command1_Click() Dim s(4) As Integer Randomize For i = 1 To 100 x = Int(Rnd * 4 + 1) s(x) = s(x) + 1 Next i For i = 1 To 4 Print "s("; i; ")="; s(i) Next i End Sub End Sub 22.以下程序产生20个(0,100)之间的随机整数,打印大于50的数,并求这些数的和。 Private Sub Command1_Click() Dim arr(1 To 20) For i = 1 To 20 arr(i) = Int(Rnd * 100) Text1.Text = Text1.Text & arr(i) & Chr(13) & Chr(10) Next i Sum = 0 For Each x In arr If x > 50 Then Print Tab(20); x Sum = Sum + x End If Next x Print Tab(20); "sum="; Sum End Sub 23.窗体上有一文本框和具有10个标签的标签数组,以下程序实现单击任一标签时将标签的内容添加文本框之后。 Private Sub Label1_Click(Index As Integer) Text1.Text = Text1.Text + Label1(Index).Caption End Sub 24.写输出结果。 Private Sub Command1_Click() Dim s1(5) As Integer, s2(5) As Integer, s3(5) As Integer N = 4 For i = 1 To N s1(i) = i l = N + 1 - i s2(i) = l Next i s3(5) = 0 For k = 1 To N s3(k) = s1(k) * s2(k) s3(5) = s3(5) + s3(k) Next k Print s1(3); s1(5); s1(2) Print s2(4); s3(1); s3(5) End Sub 运行结果为: 3 0 2 1 4 20 25.写输出结果。 Private Sub Command1_Click() Dim a(3, 4) For i = 1 To 3 For j = 1 To 4 a(i, j) = (i - 1) * 2 + j Print a(i, j); Next j Print Next i End Sub 运行结果为: 1 2 3 4 3 4 5 6 5 6 7 8 26.写输出结果。 Private Sub Command1_Click() Dim a(5) For i = 0 To 4 a(i) = i + 1 m = i + 1 If m = 3 Then a(m - 1) = a(i - 2) Else a(m) = a(i) If i = 3 Then a(i + 1) = a(m - 4) a(4) = i Print a(i) Next i End Sub 运行结果为: 1 2 1 4 4 27.写输出结果。 Private Sub Command1_Click() Dim a(5, 5), s(5) For i = 1 To 5 s(i) = 0 For j = 1 To 5 a(i, j) = i + j s(i) = s(i) + a(i, j) Next j Next i For Each x In s Print x; Next x End Sub 运行结果为: 20 25 30 35 40 28.写输出结果。 Dim a() As Integer Private Sub Command1_Click() ReDim a(1 To 5) For i = 1 To 5 a(i) = i Next i ReDim a(1 To 10) For i = 6 To 10 a(i) = 2 * i Next i For i = 1 To 10 Print a(i); Next i End Sub 运行结果为: 0 0 0 0 0 12 14 16 18 20 29.以下程序求二维数组对角线元素之和。 Private Sub Command1_Click() Dim data(5, 5) As Integer Dim i%, j% For i = 1 To 5 For j = 1 To 5 data(i, j) = 1 Next j, i For i = 1 To 5 For j = 1 To 5 If i = j Or i + j = 5 Then data(0, 0) = data(0, 0) + data(i, j) Next j, i Print data(0, 0) End Sub 30.输入10个整数,找出最大与最小数,把这两个数对调,输出对调的结果。 Private Sub Command1_Click() Dim d(10) As Integer Dim i%, max%, min%, temp% Randomize Timer For i = 1 To 10 d(i) = Rnd * 100 Next i For i = 1 To 10 Print d(i); Next i Print max = 1: min = max For i = 2 To 10 If d(i) > d(max) Then max = i If d(i) < d(min) Then min = i Next i temp = d(max) d(max) = d(min) d(min) = temp For i = 1 To 10 Print d(i); Next i End Sub 31.程序的输出结果是_20 10 10 20__。 Private Sub suba(x As Integer, y As Integer) Dim t As Integer t = x: x = y: y = t End Sub Private Sub Form_Click() Dim a As Integer, b As Integer a = 10: b = 20 Call suba(a, b) Print a; b; Call suba(b, a) Print a; b End Sub 32.程序的输出结果__15_。 Private Function funa(x As Integer) As Integer Static s As Integer s = s + x funa = funb(s) End Function Function funb(y As Integer) As Integer Static sum As Integer sum = sum + y funb = sum End Function Private Sub Form_Click() Dim acc As Integer, i As Integer acc = 0 For i = 1 To 3 acc = acc + funa(i) Next i Print acc End Sub 33.程序的输出结果__10 110_。 Private Sub sub1(ByVal a As Integer, b As Integer) a = a + b: b = b + a End Sub Private Sub Form_Click() Dim x As Integer, y As Integer x = 10: y = 20 Call sub1(x, y) sub1 x, y Print x; y End Sub 34.程序的输出结果__3 2___. Private Sub mysub(pa1 As String, a As Integer, b As Integer) Dim str As String, n As Integer, i As Integer n = Len(Trim(pa1)) For i = 1 To n If Mid(pa1, i, 1) >= "A" And Mid(pa1, i, 1) <= "Z" Then a = a + 1 ElseIf Mid(pa1, i, 1) >= "0" And Mid(pa1, i, 1) <= "9" Then b = b + 1 End If Next i End Sub Private Sub Command1_Click() Dim x As Integer, y As Integer x = 0: y = 0 Call mysub(Text1.Text, x, y) Print x; y End Sub 注意:运行程序时在文本框中输入”There are 12 students studing VB”. 35.程序的输出结果为__1 4 9 16 25_____. Private Sub SUB1(ARR() As Integer, Optional ByVal N As Integer = 2) For I = 1 To 5 ARR(I) = I ^ N Next I End Sub Private Sub Form_Click() Dim A(1 To 5) As Integer, I As Integer Call SUB1(A(), 3) Call SUB1(A()) For I = 1 To 5 Print A(I); Next I End Sub 36.以下程序当三次单击命令按钮时输出结果_25 50 75____.去掉static时, 三次单击命令按钮时输出结果_25 25 25_____. Sub mysub() For i = 1 To 10 Step 2 s = s + i Next i Print s; End Sub Private Sub Command1_Click() Call mysub End Sub 37.对于以下程序代码,程序运行时第一次单击命令按钮时文本框text1和text2中的内容是_10 10__;第二次单击命令按钮时文本框text1和text2中的内容__58 58___. Dim y As Integer Private Function firstfunc(x As Integer) As Integer x = x + y: y = x + y firstfunc = x + y End Function Private Function secondfunc(x As Integer, y As Integer) As Integer secondfunc = 2 * x + y End Function Private Sub Command1_Click() Dim x As Integer x = 2 Text1.Text = secondfunc(firstfunc(x), y) Text2.Text = firstfunc(x) End Sub 38.在窗体上画两个组合框combo1和combo2.两个标签label1和label2.程序运行时,在某个组合框中选一个项目,然后把所选的项目在其下面的标签中显示出来,填空. Private Sub Combo1_Click() Call showitem(Combo1, Label1) End Sub Private Sub Combo2_Click() Call showitem(Combo2, Label2) End Sub Public Sub showitem(tmpcombo As ComboBox, tmplabel As Label) tmplabel.Caption = tmpcombo.Text End Sub 39.设某列表框共有10项,按要求补充程序。 (1)按下命令按钮时将第八项内容显示在窗体上。 Private Sub Command1_Click() List1.Selected(8) = True Print List1.Text End Sub (2)单击列表框某一项时,立即把该项打印在窗体上。Private Sub List1_Click() Print List1.Text End Sub (3)删除第1、3、5、7、9项。 Private Sub Command2_Click() For i = 1 To 9 Step 2 List1.RemoveItem (10 - i) Next i End Sub (4)在列表框的每项后插入一项。 Private Sub Command3_Click() For i = 1 To 10 x = InputBox("输入插入的第" & i & "项内容") List1.AddItem x, 2 * i Next i End Sub 40.设在窗体上有一个列表框list1,单击窗体用输入框输入数据。如果在输入框输入了一定内容并按了确定按钮后,则按如下情况处理: (1) 如果输入的内容在字母“a”到“z”之间,且列表框中没有该字母,则添加之; (2) 如果输入的内容在字母“a”到“z”之间,且列表框中有该字母,则显示消息“字母已经存在” (3) 如果输入的内容不在字母“a”到“z”之间,则显示消息:输入的内容不在范围内 (4) 如果在输入框中按了“取消”按钮,则停止输入。 Private Sub Form_Click() Do While True exist = 0 x = Trim(InputBox("请输入a到z之间的一个字母", "")) If x >= "a" And x <= "z" Then For i = 0 To List1.ListCount - 1 If List1.List(i) = x Then MsgBox "此字母已经存在" exist = 1 Exit For End If Next i If exist = 0 Then List1.AddItem x Else If x = "" Then Exit Sub End Else MsgBox "输入的数据不在指定数据范围内" End If End If Loop End Sub 41.设在窗体放置两个定时器Timer1和Timer2,下面程序每隔2分钟向窗体上输出系统时间,并打印(0,1)之间的随机数。 Private Sub Form_Load() Show Timer1.Interval = 60000 Timer2.Interval = 60000 '1秒=1000毫秒,于是60秒=60000毫秒 Timer1.Enabled = True Timer2.Enabled = False End Sub Private Sub Timer1_Timer() Print Time(), Rnd Timer2.Enabled = True Timer1.Enabled = False End Sub Private Sub Timer2_Timer() Print Time(), Rnd Timer1.Enabled = True Timer2.Enabled = False End Sub 42.窗体上放置了一个滚动条Hscroll1和一个标签label1,要求标签内容反映滚动条的值。 Private Sub HScroll1_Change() Label1.Caption = HScroll1.Value End Sub Private Sub HScroll1_Scroll() Label1.Caption = HScroll1.Value End Sub 43.若要加载一个新窗体,可以使用load语句实现;若要卸载一个窗体,可以unload语句实现。 44.若要显示一个窗体,可以使用show方法;若要隐藏一个窗体,可以使用hide方法清除一个窗体上的内容,使用cls方法实现。 45.能够在整个工程文件中使用的全局变量应该在标准模块中定义。工程文件的扩展名是VBP;标准模块文件的扩展名是bas;窗体文件的扩展名是frm;若干工程构成一个工程组文件为 vbg. 46.VB应用程序主要由窗体、标准、类模块等三种模块组成。 47.启动窗体在工程属性对话框中指定;为了打开此对话框,应该执行工程菜单中的工程N属性命令。 48.全局变量必须在标准模块中定义,所使用的语句为Public。 49.Do events语句的作用是在程序执行时,把控制权交回给环境。 50.在VB中,其对话框主要分为三类,它们分别是预定义、自定义、通用对话框。 51.设有通用对话框控件Commandialoig1,则语句Commandialoig1.Action=1的功能是打开文件,与语句功能完全等价的另外一个语句是Commandialoig1.showOpen 51.能得到颜色对话框中用户所选择的颜色的属性是Color。 52.要得到字体对话框中用户所选择的字体名字、大小、颜色的属性分别是Fontname、FontSize、FontColor。 53.要建立打开文件对话框、保存文件对话框、颜色对话框和字体对话框,应该分别使用对话框控件的showopen、showsave、showColor、showFont方法。54.菜单分为下拉、弹出菜单,菜单总与窗体相关联,设计菜单需要在菜单编辑器中进行。 55.菜单控件只包含一个单击事件。 56.要在菜单中建立分隔符应该在菜单编辑器的标题选项中输入一个“_”符号。57.执行Keypress事件过程时,KeyAscii表示键的ASCII值。 58.把窗体的keypreview设置为true,编写如下程序。 Private Sub Form_KeyPress(KeyAscii As Integer) Print KeyAscii End Sub 运行时按下“a”键,输出为97。 59.在窗体上画一文本框,运行如下事件过程: Private Sub Text1_KeyPress(KeyAscii As Integer) Dim cha As String cha = Chr(KeyAscii) KeyAscii = Asc(UCase(cha)) Text1.Text = String(6, KeyAscii) End Sub 输入“a”,则文本框中显示的内容为AAAAAA 60.以下程序运行后,在text2文本框中输入“efghi,则text1中的内容为efghE. Private Sub Form_Load() Show Text1.Text = "" Text2.Text = "'" Text1.SetFocus End Sub Private Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer) Text2.Text = Text1.Text + Chr(KeyCode - 4) End Sub 61.把窗体的keypreview设置为true,编写如下程序。当按下“a ”时,输出为:Ee,补充下列程序。 Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) Print Chr(KeyCode + 4) End Sub Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer) Print Chr(KeyCode + 32 + 4) End Sub 62.编写程序,单击鼠标左键时开始画线,右击停止。 Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) Static btndrawnow As Boolean If Button = 1 and btndraw=true Then Form1.Line -(X, Y) End If If Button = 2 Then btndrawnow = False ElseIf Button = 1 and btndraw=false Then Form1.CurrentX = X Form1.CurrentY = Y btndrawnow = True End If End Sub 63.编写程序,单击鼠标左键时开始画线,松开停止。 Private draw As Boolean Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) If Button = 1 Then CurrentX = X CurrentY = Y draw = True End If End Sub Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) If Button = 1 Then Line -(X, Y) End If End Sub Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single) draw = False End Sub 64.编写程序,当鼠标移动至按钮上时,变为十字线,否则为默认形状。 Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) MousePointer = Default End Sub Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) MousePointer = 2 End Sub 65.编写程序,当拖动图片到frame时,label显示“please release if!”,放开鼠标时,图片消失,label显示“Icon received”. Private Sub Form_Load() Picture1.DragIcon = LoadPicture("d:\tray1.ico") End Sub Private Sub Frame1_DragDrop(Source As Control, X As Single, Y As Single) Picture1.DragMode = 1 Label1.Caption = "接收了图片" End Sub Private Sub Frame1_DragOver(Source As Control, X As Single, Y As Single, State As Integer) If TypeOf Source Is Picture Then Label1.Caption = "请松开它!" End If End Sub 66.对文件进行操作时,应该首先打开文件,在VB中,打开文件所使用的语句为Open,在该语句中,可以设置的输入、输出方式包括Input、Output、Append、和Binary。如果省略,则为随机方式。对文件的存取类型可以分为顺序、随机和二进制3种。 67.顺序文件可以通过print语句或write语句把缓冲区的内容写入磁盘,而读操作可以通过input、line Input或input()语句实现。对于随机文件的读写可分别通过get和put语句实现。 68.获得文件长度可以用FileLength函数,要获得文件的当前读写位置可以用Loc()函数,用于判断当前文件位置是否到达文件结尾时,应该使用EOF()函数。 69.在C盘当前文件还将有下建立一个名为Data.txt的顺序文件。要求用文本输入框架输入单词。每次按下回车时写入一条记录。并清除文本框中的内容,直到输入end时为止。 Private Sub Form_Click() Open "d:\data.txt" For Output As #3 Text1.Text = "" End Sub Private Sub Text1_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then If Text1.Text = "END" Then Close #3 End Else Print #3, Text1.Text Text1.Text = "" End If End If 70.设 Picture1.scaleleft=200, Picture1.scaleltop=250, Picture1.scalewidth=500, Picture1.scaleheight=-400,则Picture1的右下角坐标为(300,-150) 71.窗体Form1在左上角的坐标为(-200,250),右下角坐标为(300,-150),则X轴正方向向右,Y轴正方向向上。 72.当Scale方法不带参数时,则采用缇坐标系,相当于ScaleMode=1。 三.程序设计题 1.建立窗体及控件,在文本框text1中输入若干字符,其它文本框用于输出各类字符的个数。 Private Sub Command1_Click() Text2.Text = Len(Text1.Text) For i = 1 To Len(Text1.Text) ch = Mid(Text1.Text, i, 1) If ch >= "A" And ch <= "Z" Or ch >= "a" And ch <= "z" Then alpha = alpha + 1 ElseIf ch >= "0" And ch <= "9" Then Number = Number + 1 Else other = other + 1 End If Next i Text2.Text = Number Text3.Text = alpha Text4.Text = other End Sub 2.形成数列1,2,3,5,16,231,…,该数列的规律是从第3项始每一项是两相邻两项的平方差。 Private Sub Command1_Click() Dim x, y As Double x = 1 y = 2 For i = 1 To 10 Print x, y x = (y + x) * (y - x) y = (x + y) * (x - y) Next i End Sub 3.为比赛打分,在去掉一个最高分和一个最低分后N-2个分数的平均分。 Private Sub Command1_Click() Dim n As Integer, x As Integer n = InputBox("请输入N", "输入提示") x = InputBox("请输入", "输入提示") Max = x: Min = x:Sum = x For i = 1 To n - 1 x = InputBox("请输入", "输入提示") If x > Max Then Max = x If x < Min Then Min = x Sum = Sum + x Next i Sum = Sum - Max - Min aver = Sum / (n - 2) Print "平均分=", aver, Sum End Sub 4.将一个具有10个元素的数组的前5个元素与后5个元素对换。 Option Base 1 Private Sub Form_Click() Dim a(10) As Integer For i = 1 To 10 a(i) = InputBox("请输入", "输入提示") Next i For i = 1 To 10 Print a(i); Next i print Print "交换顺序后的数组为:" For i = 1 To 5 t = a(i) a(i) = a(11 - i) a(11 - i) = t Next i For i = 1 To 10 Print a(i); Next i End Sub 5.输出杨辉三角形。 Private Sub Form_Click() Dim a(10, 10) As Integer For i = 1 To 10 a(i, 1) = 1: a(i, i) = 1 Next i For i = 2 To 10 For j = 2 To i - 1 a(i, j) = a(i - 1, j - 1) + a(i - 1, j) Next j, i For i = 1 To 10 For j = 1 To i Print Tab(5 * j); a(i, j); Next j Print Next i End Sub 6.产生1-100之间的随机整数。 Private Sub Form_Click() rndf (100) End Sub Public Function rndf(n As Integer) For i = 1 To n x = Int(100 * Rnd) If i Mod 10 = 0 Then Print Else Print x; Next i End Function 7.八进制数与十进制数的相互转换。 Option Base 1 Private Sub Command1_Click() Dim x, y As Integer Dim a(1 To 10) x = Val(Text1.Text) i = 1 Do While x >= 8 y = x / 8 a(i) = x Mod 8 i = i + 1 x = y Loop a(i) = x For k = i To 1 Step -1 Text2.Text = Text2.Text + Str(a(k)) Next k End Sub 8.在文本框text1中输入多个英文单词,单击转换按钮,将text1中的内容作如下转换:遇到“.”时,将每句的开头大写,在文本框text2中重新显示。 Private Sub Command1_Click() converse (Text1.Text) End Sub Public Sub converse(str As String) Dim u As Boolean u = True l = Len(str) For i = 1 To l If u Then Text2.Text = Text2.Text + UCase(Mid(str, i, 1)) Else Text2.Text = Text2.Text + Mid(str, i, 1) End If If Mid(str, i, 1) <> "." Or Mid(str, i, 1) <> Chr$(10) Then u = False End If If Mid(str, i, 1) = "." Or Mid(str, i, 1) = Chr$(10) Then u = True End If Next i End Sub 9.输出Fibonacci数列。 Private Sub Command1_Click() Dim i As Integer For i = 1 To 20 a = fibo(i) Print a, If i Mod 2 = 0 Then Print Next i End Sub Public Function fibo(n As Integer) As Integer If n = 1 Or n = 2 Then fibo = 1 Else If n > 2 Then fibo = fibo(n - 1) + fibo(n - 2) End If End If End Function 10.设计一个包含form1和form2的两个窗体的应用程序,form1为启动窗体,单击form1隐藏之,显示form2;单击form2时,隐藏之,显示form1。双击任何一个窗体时,程序结束。 Private Sub Form_Click() Form2.Hide Form1.Show End Sub Private Sub Form_Click() Form1.Hide Form2.Show End Sub 11.窗体上有一个名为CD1的通用对话框控件,一个名为text1的文本框,两个命令按钮,标题分别为“打开文件”、“保存文件”;当单击打开文件文件按钮时,把选中的文件读入text1文本框中,单击保存文件按时,把text1中的内容写入选定的文件名。 Private Sub C1_Click() CD1.Filter = "*.txt|*.txt" CD1.InitDir = "c:\my documents\" CD1.CancelError = False CD1.FilterIndex = 1 CD1.ShowOpen Open CD1.FileName For Input As #1 Do While Not EOF(1) Line Input #1, s Text1.Text = Text1.Text + s Loop Close #1 End Sub Private Sub C2_Click() CD1.InitDir = "c:\my documents\" CD1.Filter = "*.txt|*.txt" CD1.CancelError = False CD1.FilterIndex = 1 CD1.ShowSave Open CD1.FileName For Output As #1 Print #1, Text1.Text Close #1 End Sub 12.建立一下下拉式菜单,顶级为“文本框颜色”,名称为colors,两个子菜单项分别为“文本颜色”和背景颜色“”,名称分别为textcolor和backcolor。编写事件过程完成相应的功能。 Private Sub backcolor_Click() Cd1.ShowColor Text1.backcolor = Cd1.Color End Sub Private Sub textcolor_Click() Cd1.ShowColor Text1.ForeColor = Cd1.Color End Sub 13.建立一个弹出式菜单,菜单项目为“复制”和“粘贴”,编写事件过程完成相应功能。 Private Sub copy_Click() Clipboard.SetText (Text1.SelText) End Sub Private Sub paste_Click() Text1.SelText = Clipboard.GetText End Sub Private Sub Text1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) If Button = 2 Then PopupMenu copypaste End If End Sub 14.在窗体建立两个文本框,程序运行后,如果在第一个文本框输入A、B、C、D或者是a、b、c、d,则在第二个文本框显示EFDH。 Private Sub Form_Load() Show Text1.Text = "" Text2.Text = "" Text1.SetFocus End Sub Private Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer) Text2.Text = Text2.Text + Chr(KeyCode+4) End Sub 15.将调用随机函数rnd得到的若干个数据存入到rnd,dat中,然后找开此文件,将数据从小到大排序,存入到seq.dat文件中。 Sub main() Randomize (100) Form1.Show End Sub Private Sub Command1_Click() Open "d:\rnd.dat" For Output As #1 For i = 1 To 100 a = Int(Rnd(100) * 100) Print #1, a Next i Close #1 End Sub Private Sub Command2_Click() Dim a(1 To 100) As Integer Open "d:\rnd.dat" For Input As #1 For i = 1 To 100 Input #1, a(i) Next i Close #1 Open "d:\seq.dat" For Output As #2 For i = 1 To 99 For j = i + 1 To 100 If a(i) > a(j) Then t = a(i): a(i) = a(j): a(j) = t End If Next j Next i For i = 1 To 100 Print #2, a(i) Next i Close #2 End Sub Private Sub Form_Load() End Sub 16.在窗体上的文本框输入内容,单击保存按钮时,首先检查是否为空,如果不空,则将文本框中的所有字母转为大写保存到Filestring.txt文件中。 Private Sub Command1_Click() If Text1.Text = "" Then MsgBox ("文本框中必须有内容") Text1.SetFocus Else Open "d:\filesstring.txt" For Output As #1 Text1.Text = UCase(Text1.Text) Print #1, Text1.Text End If End Sub 17.在窗体上添加文件系统控件,包括驱动器列表框、目录列表框和文件列表框,以及“保存”、“显示”和“退出”命令按钮,当单击保存按钮时,将文件列表框当前目录下的所有文件名保存到一个磁盘文件Filename.txt中,;当单击显示按钮时,将所保存的文件内容显示到窗体的列表框控件中。 Private Sub Command1_Click() Open "d:\filename.txt" For Append As #1 For i = 1 To File1.ListCount - 1 Text1.Text = Text1.Text & File1.List(i) & vbCrLf Next i Print #1, Text1.Text Close #1 End Sub Private Sub Command2_Click() Dim str As String Open "d:\filename.txt" For Input As #1 Do While Not EOF(1) Input #1, str List1.AddItem str Loop Close #1 End Sub Private Sub Command3_Click() End End Sub Private Sub Dir1_Change() File1.Path = Dir1.Path File1.Pattern = "*.*" End Sub Private Sub Drive1_Change() Dir1.Path = Drive1.Drive End Sub 18.穷举法举例(求由1角、2角、5角组成1元组合数及组合情况)。 Private Sub Form_Click() Dim n As Integer For x = 0 To 10 For y = 0 To 10 For z = 0 To 10 If x + 2 * y + 5 * z = 10 Then Print x; y; z n = n + 1 End If Next z Next y Next x Print "n="; n End Sub 19.猴子吃桃问题。 Private Sub Form_Click() x = 1 For i = 9 To 1 Step -1 x = 2 * x + 2 Next i Print x End Sub 20.求水仙花数。 Private Sub Command1_Click() Dim p As Integer List1.Clear For n = 100 To 999 a = Int(n / 100) b = Int((n - a * 100) / 10) c = n - a * 100 - b * 10 p = a * a * a + b * b * b + c * c * c If p = n Then List1.AddItem p Next n End Sub 21.求Fibonacci数列的前40项。 Private Sub Form_Click() Dim f1 As Long Dim f2 As Long n = 1 f1 = 1 f2 = 1 Do While n <= 20 Print f1, f2, f1 = f1 + f2 f2 = f2 + f1 If n Mod 2 = 0 Then Print n = n + 1 Loop End Sub 22.求素数。 Private Sub Form_Click() Dim n, i, k, j, flag As Integer j = 0 For n = 3 To 200 Step 2 k = Int(Sqr(n)) flag = 1 For i = 2 To k If n Mod i = 0 Then flag = 0 Next i If flag = 1 Then Print n;: j = j + 1 If j Mod 10 = 0 Then Print Next n End Sub
本文档为【vbvb考试题25vb复习题2】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_456971
暂无简介~
格式:doc
大小:328KB
软件:Word
页数:42
分类:计算机考试
上传时间:2018-09-04
浏览量:43