武汉职业技术学院 《Visual Basic程序设计》试卷四 一.选择题 (30分) (1)设窗体上有一个文本框,Text1,要求只能显示信息,不能输入。 A) Text1.MaxLength = 0 B) Text1.Enabled = False C) Text1.Visible = False D) Text1.Width = 0 (2) 以下能在窗体Form1的标题栏中显示“VisualBasic窗体"的语句是 A) Form1.Name="VisualBasic窗体" B) Form1.Title="VisualBasic窗体" C) Form1.Caption="VisualBasic窗体" D) Form1.Text="VisualBasic窗体” (3)设菜单中有一个菜单项为"Open"。若要为该菜单命令设计访问键,即按下Alt及字母O时,能够执行"Open"命令,则在菜单编辑器中设置“Open"命令的方式是 A) 把Caption属性设置为&Open B)??把Caption属性设置为O&pen C) 把Name属性设置为&Open D) 把Name属性设置为O&pen (4) 以下关于MsgBox的叙述中,错误的是 A) MsgBox函数返回一个整数 B) 通过MsgBox函数可以设置信息框中图标和按钮的类型 C) MsgBox语句没有返回值 D) MsgBox函数的第一个参数是一个整数,该参数只能确定对话框中显示的按钮数量 (5)在窗体上画一个名称为Timer1的计时器控件,要求每隔0.5秒发生一次计时器事件,则以下正确的属性设置语句是 A)Timer1.InterVal=0.5????B) Timer1.Interval=5 C) Timer.Interval=50???????? D) Timer1.Interval=500 (6)以下关于多重窗体程序的叙述中,错误的是 A)用Hide方法不但可以隐藏窗体,而且能清除内存中的窗体 B)在多重窗体程序中,各窗体的菜单是彼此独立的 C)在多重窗体程序中,可以根据需要指定启动窗体 D)对于多重窗体程序中,而且单独保存每个窗体 (7) 以下叙述中错误的是 A)事件过程是响应特定事件的一段程序 B)不同的对象可以具有相同名称的方法 C)对象的方法是执行指定操作的过程 D)对象事件的名称可以由编程者指定 (8) 以下合法的Visual Basic标识符是 A) ForLoop??B) Const??C) 9abc??D) a#x (9) 当一个复选框被选中时,它的Value属性的值是 A) 3?? B)??2??C) 1??D) 0 (10) 表达式 5 Mod 3+3\\5*2的值是 A) 0?? B) 2?? C)4??D) 6 (11) 设x=4,y=8,z=7,以下表达式的值是 x<y And (Not y>z) Or z<x A) 1?? B) -1??C) True??D) False (12)??在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程: Private Sub Command1_Click() ?? a$="VisualBasic" ??Print String(3,a$) End Sub 程序运行后,单击命令按钮,在窗体上显示的内容是 A) VVV??B) Vis??C) sic??D) 11 (13) 以下叙述中错误的是 A) 在KeyPress事件过程中不能识别键盘的按下与释放 B) 在KeyPress事件过程中不能识别回车键 C) 在KeyDown和KeyUp事件过程中,将键盘输入的"A"和"a"视作相同的字母 D) 在KeyDown和KeyUp事件过程中,从大键盘上输入的"1"和从右侧小键盘上输入的"1"被 视作不同的字符 (14)在窗体上画一个名称为Command1的命令按钮,并编写如下程序: Private Sub Command1_Click() ?? Dim x As Integer ??Static y As Integer ??x=10 ??y=5 ??Call f1(x,y) ??Print x,y End Sub Private Sub f1(ByRef x1 As Integer, y1 As Integer) ???? x1=x1+2 ???? y1=y1+2 End Sub 程序运行后,单击命令按钮,在窗体上显示的内容是 A) 10?? 5????B) 12??5????C) 10??7?? D) 12??7 (15) 在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程: ??Private Sub Command1_Click() ?? x=InputBox("Input") ?? Select Case x ????Case 1,3 ????????Print "分支 1" ????Case Is >4 ????????Print "分支 2" ????Case Else ????????Print "Else 分支 " End Select End Sub 程序运行后,如果在输入对话框中输入2,则窗体上显示的是 A) 分支1????B) 分支2?? C) Else分支????D) 程序出错 ?????? 二.填空题(30分) 1.以下程序段的输出结果是_______。 num =0 While num<=2 ???num = num+1 Wend Print num 2.窗体上有一个名称为List1的列表框,一个名称为Text1的文本框,一个名称为Label1、Caption属性为“Sum”的标签,一个名称为Command1、标题为“计算”的命令按钮。程序运行后,将把1~100之间能够被7整除的数添加到列表框。如果单击“计算”按钮,则对List1中的数进行累加求和,并在文本框中显示计算结果,如图所示。以下是实现上述功能的程序,请填空。 Private Sub Form_Load() ????For i=1 To 100 ?????? If i Mod 7 =0 Then ????___________ ??End If ????Next End Sub Private Sub Command1_Click() ????Sum =0 ?? For i=0 To_____ ????????Sum =Sum+__________ ????Next ????Text1.Text=Sum End Sub ?? 3. 阅读程序: Option Base 1 Private Sub Form_Click() ?? Dim a(3) As Integer ?? Print "输入的数据是:"; For i=1 To 3 ??????a(i)=InputBox("输入数据") ?? Print a(i); Next Print If a(1)<a(2) Then ????t=a(1) ????a(1)=a(2) ????a(2)=_______ End If If a(2)>a(3) Then ?? m=a(2) ElseIf a(1)>a(3) Then ?m=________ Else ????m=________ End If Print "中间数是:";m End Sub 程序运行后,单击窗体,在输入对话框中分别输入三个整数,程序将输出三个数中的中间数, 4. 在窗体上画一个名称为“Command1”,标题为“计算”的命令按钮,再画7个标签,其中5个标签组成名称为Label1的控件数组;名称为Label2的标签用于显示计算结果,其Caption属性的初始值为空;标签Label3的标题为“计算结果”。运行程序时会自动生成5个随机数,分别显示在标签控件数组的各个标签中,如图所示。单击“计算”按钮,则将标签数组各元素的值累加,然后计算结果显示在Label2。请填空。 Private Sub Command1_Click() ?? Sum = 0 ?????? For i=0 To 4 ??????????Sum=Sum+_________ ??????Next ?? ________=Sum End Sub 5. 在窗体上画一个名称为Command1的命令按钮,然后编写如下程序: Option Base 1 Private Sub Command1_Click() ????Dim a As Variant ????a=Array(1,2,3,4,5) ????Sum=0 ????For i=1 To 5 ???????? Sum = sum+a(i) ????Next i ????x=Sum/5 ?? For i =1 To 5 ??????If a(i)>x Then Print a(i); ??Next i End Sub 程序运行后,单击命令按钮,在窗体上显示的内容是 三.编程题 (40分) 1.用InputBox 函数输入长方形的长和宽,用MsgBox输出长方形的周长和面积.(10分) 2.打印出3-100的所有素数,并统计个数 (10分) 3.编写求两数中较大数的Function过程,利用其求3个数中的最大数.(10分) 4.定义一个数组存储以下数据 T Y I u o a j K g b m n ,将其以倒序输出.(10分) 《Visual Basic程序设计》试卷四答案 一.选择题 1-5 bcadd 6-10 adacb 11-15 dabdc 二.填空题 1.3 2.List1.AddItem i、 List1.ListCount-1 List1.List(i) 3 t a(3) a(1) Label1(i).Caption Label2.Caption 4 5