一 、选择题 (1) 在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程: Private Sub Command1_Click() Move 500,500 End Sub 程序运行后,单击命令按钮,执行的操作为 A.命令按钮移动到距窗体左边界、上边界各500的位置 B.窗体移动到距屏幕左边界、上边界各500的位置 C.命令按钮向左、上方向各移动500 D.窗体向左、上方向各移动500 正确答案: B (2) 在窗体上有若干控件,其中有一个名称为Text1的文本框。影响Text1的Tab顺序的属性是 A.TabStop B.Enabled C.Visible D.TabIndex 正确答案: D (3) 以下定义数组或给数组元素赋值的语句中,正确的是 A)Dim a As Variant a=Array(1,2,3,4,5) B)Dim a(10) As Integer a=Array(1,2,3,4,5) C)Dim a%(10) a(1) = "ABCDE" D)Dim a(3) ,b(3) As Integer a(0) =0 a(1) =1 a(2) =2 b=a 正确答案: A (4) 在窗体上画一个名称为List1的列表框,为了对列表框中的每个项目都能进行处理,应使用的循环语句为 A.For i=0 To List1.ListCount-1 …… Next B.For i=0 To List1.Count-1 …… Next C)For i=1 To List.ListCount …… Next D)For i=1 To List1.Count …… Next 正确答案: A (5) 以下Case语句中错误的是 A.Case 0 To 10 B.Case Is>10 C.Case Is>10 And Is<50 D.Case 3, 5, Is>10 正确答案: C (6) 以下关于图片框控件的说法中,错误的是 A.可以通过Print方法在图片框中输出文本 B.清空图片框控件中图形的方法之一是加载一个空图形 C.图片框控件可以作为容器使用 D.用Stretch属性可以自动调整图片框中图形的大小 正确答案: D (7) 执行语句s=Len(Mid("VisualBasic",1,6) ) 后,s的值是 A.Visual B.Basic C.6 D.11 正确答案: C (8) 以下叙述中错误的是 A.下拉式菜单和弹出式菜单都用菜单编辑器建立 B.在多窗体程序中,每个窗体都可以建立自己的菜单系统 C.除分隔线外,所有菜单项都能接收Click事件 D.如果把一个菜单项的Enabled属性设置为False,则该菜单项不可见 正确答案: D (9) 在窗体上画一个命令按钮,其名称为Command1,然后编写如下事件过程: Private Sub Command1_Click() a=12345 Print Format$(a, "000.00") End Sub 程序运行后,单击命令按钮,窗体上显示的是 A.123.45 B.12345.00 C.12345 D.00123.45 正确答案: B (10) 以下叙述中错误的是 A.一个工程可以包括多种类型的文件 B.Visual Basic应用程序既能以编译方式执行,也能以解释方式执行 C.程序运行后,在内存中只能驻留一个窗体 D.对于事件驱动型应用程序,每次运行时的执行顺序可以不一样 正确答案: C
(11) 以下关于函数过程的叙述中,正确的是 A.函数过程形参的类型与函数返回值的类型没有关系 B.在函数过程中,过程的返回值可以有多个 C.当数组作为函数过程的参数时,既能以传值方式传递,也能以传址方式传递 D.如果不指明函数过程参数的类型,则该参数没有数据类型 正确答案: A (12) 以下关于变量作用域的叙述中,正确的是 A.窗体中凡被声明为Private的变量只能在某个指定的过程中使用 B.全局变量必须在标准模块中声明 C.模块级变量只能用Private关键字声明 D.Static类型变量的作用域是它所在的窗体或模块文件 正确答案: B (13) 确定一个控件在窗体上的位置的属性是 A.Width和Height B.Width或Height C.Top和Left D.Top或Left 正确答案: C (14) 在窗体上画一个名称为Text1的文本框和一个名称为Command1的命令按钮,然后编写如下事件过程: Private Sub Command1_Click() Text1.Text= "Visual" Me.Text1= "Basic" Text1= "Program" End Sub 程序运行后,如果单击命令按钮,则在文本框中显示的是 A.Visual B.Basic C.Program D.出错 正确答案: C (15) 以下关系表达式中,其值为False的是 A."ABC">"AbC" B."the"<>"they" C."VISUAL"=UCase("Visual") D."Integer">"Int" 正确答案: A (16) 语句Print 5/4*6\5 Mod 2的输出结果是 A.0 B.1 C.2 D.3 正确答案: B (17) 在窗体上画一个文本框、一个标签和一个命令按钮,其名称分别为Text1、Label1和Command1,然后编写如下两个事件过程: Private Sub Command1_Click() strText=InputBox( "请输入") Text1.Text=strText End Sub Private Sub Text1_Change() Label1.Caption=Right(Trim(Text1.Text) ,3) End Sub 程序运行后,单击命令按钮,如果在输入对话框中输入abcdef,则在标签中显示的内容是 A.空 B.abcdef C.abc D.def 正确答案: D (18) 在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程: Private Sub Command1_Click() x=-5 If Sgn(x) Then y=Sgn(x∧2) Else y=Sgn(x) End If Print y End Sub 程序运行后,单击命令按钮,窗体上显示的是 A.-5 B.25 C.1 D.-1 正确答案: C (19) 一个工程中含有窗体Form1、Form2和标准模块Model1,如果在Form1中有语句Public X As Integer,在Model1中有语句Public Y As Integer。则以下叙述中正确的是 A.变量X、Y的作用域相同 B.Y的作用域是Model1 C.在Form1中可以直接使用X D.在Form2中可以直接使用X和Y 正确答案: C (20) 在窗体上画一个名称为Drive1的驱动器列表框,一个名称为Dir1的目录列表框。当改变当前驱动器时,目录列表框应该与之同步改变。设置两个控件同步的命令放在一个事件过程中,这个事件过程是 A.Drive1_Change B.Drive1_Click C.Dir1_Click D.Dir1_Change 正确答案: A
(21) 在窗体上画一个命令按钮(其Name属性为Command1) ,然后编写如下代码: Option Base 1 Private Sub Command1_Click() Dim a s=0 a=Array(1,2,3,4) ; j=1 For i=4 To 1 Step-1 s=s+a(i) *j j=j*10 Next i Print s End Sub 运行上面的程序,单击命令按钮,其输出结果是 A.4321 B.1234 C.34 D.12 正确答案: B (22) 在窗体上画一个名称为Text1的文本框,要求文本框只能接收大写字母的输入。以下能实现该操作的事件过程是A.Private Sub Text1_KeyPress(KeyAscii As Integer) If KeyAscii<65 Or KeyAscii>90 Then MsgBox "请输入大写字母" KeyAscii=0 End If End Sub B.Private Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer) If KeyCode <65 Or KeyCode>90 Then MsgBox "请输入大写字母" KeyCode=0 End If End Sub C.Private Sub Text1_MouseDown(Button As Integer,_ Shift As Integer, X As Single, Y As Single) If Asc(Text1.Text) <65 Or Asc(Text1.Text) >90 Then MsgBox "请输入大写字母" End If End Sub D.Private Sub Text1_Change() If Asc(Text1.Text) >64 And Asc(Text1.Text) <91 Then MsgBox "请输入大写字母" End If End Sub 正确答案: A (23) 假定在窗体(名称为Form1) 的代码窗口中定义如下记录类型: Private Type animal animalName As String *20 aColor As String *10 End Type 在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程: Private Sub Command1_Click() Dim rec As animal Open "c:\vbTest.dat"For Random As #1 Len=Len(reC. rec.animalName= "Cat" rec.aColor= "White" Put #1,,rec Close #1 End Sub 则以下叙述中正确的是 A.记录类型animal不能在Form1中定义,必须在标准模块中定义 B.如果文件c:\vbTest.dat不存在,则Open命令执行失败 C.由于Put命令中没有指明记录号,因此每次都把记录写在文件的末尾 D.语句"Put #1,,rec"将animal类型的两个数据元素写到文件中 正确答案: D (24) 在窗体上画一个名称为Text1的文本框,一个名称为Command1的命令按钮,然后编写如下事件过程和通用过程: Private Sub Command1_Click() n=Val(Text1.Text) If n\2=n/2 Then f=f1(n) Else f=f2(n) End If Print f;n End Sub Public Function f1(ByRef x) x=x*x f1=x+x End Function Public Function f2(ByVal x) x=x*x f2=x+x+x End Function 程序运行后,在文本框中输入6,然后单击命令按钮,窗体上显示的是 A.72 36 B.108 36 C.72 6 D.108 6 正确答案: A (25) 在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程: Private Sub Command1_Click() c=1234 c1=Trim(Str(C.) For i=1 To 4 Print Next End Sub 程序运行后,单击命令按钮,要求在窗体上显示如下内容: 1 12 123 1234 则在下划线处应填入的内容为 A.Right(c1,i) B.Left(c1,i) C.Mid(c1,i,1) D.Mid(c1,i,i) 正确答案: B (26) 在窗体上画一个名称为Command1的命令按钮和一个名称为Text1的文本框,然后编写如下事件过程: Private Sub Command1_Click() n=Val(Text1.Text) For i=2 To n For j=2 To Sqr(i) If i Mod j=0 Then Exit For Next j If j >Sqr(i) Then Print i Next i End Sub 该事件过程的功能是 A.输出n 以内的奇数 B.输出n 以内的偶数 C.输出n 以内的素数 D.输出n以内能被j整除的数 正确答案: C (27) 以下描述中正确的是 A.标准模块中的任何过程都可以在整个工程范围内被调用 B.在一个窗体模块中可以调用在其他窗体中被定义为Public的通用过程 C.如果工程中包含Sub Main过程,则程序将首先执行该过程 D.如果工程中不包含Sub Main过程,则程序一定首先执行第一个建立的窗体 正确答案: B (28) 在窗体上画一个名称为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 B.10 C.9 D.8 正确答案: C (29) 在窗体上画一个名称为Text1的文本框和一个名称为Command1的命令按钮,然后编写如下事件过程: Private Sub Command1_Click() Dim array1(10,10) As Integer Dim i As Integer, j As Integer For i=1 To 3 For j=2 To 4 array1(i,j) =i+j Next j Next i Text1.Text=array1(2,3) +array1(3,4) End Sub 程序运行后,单击命令按钮,在文本框中显示的值是 A.15 B.14 C.13 D.12 正确答案: D (30) 在窗体上画4个文本框(如图所示) 并用这4个文本框建立一个控件数组,名称为Text1(下标从0开始,自左至右顺序增大) ,然后编写如下事件过程 Private Sub Command1_Click() For Each TextBox In Text1 Text1(i) =Text1(i) Index i=i+1 Next End Sub 程序运行后,单击命令按钮,4个文本框中显示的内容分别为 A.0 1 2 3 B.1 2 3 4 C.0 1 3 2 D.出错信息 正确答案: A
二 、填空题 (1) Visual Basic应用程序中标准模块文件的扩展名是 【1】 。正确答案: 1.(.bas)
(2) 在菜单编辑器中建立一个菜单,其主菜单项的名称为mnuEdit, Visible属性为False。程序运行后,如果用鼠标右键单击窗体,则弹出与mnuEdit对应的菜单。以下是实现上述功能的程序,请填空。 Private Sub Form 【2】 (Button As Integer, Shift As Integer, X As Single, Y As Single) If Button=2 Then 【3】 mnuEdit End If End Sub 正确答案: 1.(MouseDown) 2.(PopupMenu)
(3) 为了使计时器控件Timer1每隔0.5秒触发一次Timer事件,应将Timer1控件的 【4】 属性设置为 【5】 。正确答案: 1.(Interval) 2.(500)
(4) 与数学表达式 对应的Visual Basic表达式是 【6】 。 正确答案: 1.(((Cos(a+b) ) ^2) /(3*x)+5)
(5) 将C盘根目录下的图形文件moon.jpg装入图片框Picture1的语句是 【7】 。 正确答案: 1.(Picture1.Picture=LoadPicture("c:\moon.jpg") )
(6) 在窗体上画一个名称为Text1的文本框,然后画3个单选按钮,并用这3个单选按钮建立一个控件数组,名数为Option1。程序运行后,如果单击某个单选按钮,则文本框中的字体将根据所选择的单选按钮切换,如图所示。请填空。 Private Sub Option1_Click(Index As Integer) Select Case 【8】 Case 0 a="宋体" Case 1 a="黑体" Case 2 a="楷体_GB2312" End Select Text1 【9】 =a End Sub 正确答案: 1.(Index) 2.(FontName)
(7) 在窗体上画两个组合框,其名称分别为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) 【10】 Caption= 【11】 Text End Sub 正确答案: 1.(tmpLabel) 2.(tmpCombo)
(8) 在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程: Private Sub Command1_Click() n=5 f=1 s=0 For i=1 To n f=f 【12】 s=s+f Next Print s End Sub 该事件过程的功能是计算的值。请填空。 正确答案: 1.(/i)
(9) 在窗体上画一个名称为Command1的命令按钮,然后编写如下程序: Option Base 1 Private Sub Command1_Click() Dim a(10) As Integer For i=1 To 10 a(i) =i Next Call swap ( 【13】 ) For i=1 To 10 Print a(i) ; Next End Sub Sub swap(b() As Integer) n= 【14】 For i=1 To n/2 t=b(i) b(i) =b(n) b(n) =t 【15】 Next End Sub 上述程序的功能是,通过调用过程swap,调换数组中数值的存放位置,即a(1) 与a(10) 的值互换,a(2) 与a(9) 的值互换,……,a(5) 与a(6) 的值互换。请填空。 正确答案: 1.(a) 2.(UBound(b)) 3.(n=n-1)
|