1.以下叙述中错误的是____B____。
A..vbp文件是工程文件,一个工程可以包含.bas文件 B..frm文件是窗体文件,一个窗体可以包含.bas文件
C..vbp文件是工程文件,一个工程可以由多个.frm文件组成
D..vbg文件是工程组文件,一个工程组可以由多个工程组成 2.以下合法的VB变量名是____C____。
A.Case B.t-name C.name10 D.x*y 3.以下描述中错误的是____B____。
A.窗体的标题通过其Caption属性设置
B.窗体的名称(Name属性)可以在运行期间修改 C.窗体的背景图形通过其Picture属性设置 D.窗体最小化时的图标通过其Icon属性设置
4.在Visual Basic集成环境中,可以列出工程中所有模块名称的窗口是____A____。
A.工程资源管理器窗口 B.窗体设计窗口 C.属性窗口 D.代码窗口
5.在Visual Basic集成环境中,要添加一个窗体,可以单击工具栏上的一个按钮,这个按钮是_____A___。
A.
B.
C.
D.
6.在Visual Basic集成环境中,要结束一个正在运行的工程,可单击工具栏上的一个按钮,这个按钮是_____D___。
A.
B.
C.
D.
7.以下变量名中合法的是__C______。
A.x2-1 B.print C.str_n D.2x 8.执行语句Dim X,Y As Integer后,___D_____。
A.X和Y均被定义为整型变量 B.X和Y均被定义为变体类型变量
C.X被定义为整型变量,Y被定义为变体类型变量 D.X被定义为变体类型变量,Y被定义为整型变量
9.在设计窗体时双击窗体的任何地方,可以打开的窗口是___A_____。
A.代码窗口 B.属性窗口 C.工程资源管理器窗口 D.工具箱窗口 10.以下叙述中错误的是___D_____。
A.标准模块文件的扩展名是.bas B.标准模块文件是纯代码文件
C.在标准模块中声明的全局变量可以在整个工程中使用
D.在标准模块中不能定义过程 11.以下叙述中错误的是_____C____。
A.在Visual Basic的窗体中,一个命令按钮是一个对象 B.事件是能够被对象识别的状态变化或动作
C.事件都是由用户的键盘操作或鼠标操作触发的 D.不同的对象可以具有相同的方法
..
12.设x是小于10的非负数。对此陈述,以下正确的VB表达式是___C____。 A.0≤x<10 B.0<=x<10 C.x>=0 And x<10 D.x>=0 Or x<=10
13.在设计阶段,当按Ctrl+R键时,所打开的窗口是_B______。 A.代码窗口 B.工程资源管理器窗口 C.工具箱窗口 D.属性窗口
14.在设计阶段,当按下F4键时,所打开的窗口是____D___。 A.代码窗口 B.工具箱窗口 C.工程资源管理器窗口 D.属性窗口
15.在Visual Basic集成环境的设计模式下,用鼠标双击窗体上的某个控件打开的窗口是____D___。 A.工程资源管理器窗口 B.属性窗口 C.工具箱窗口 D.代码窗口
16.设x是整型变量,与函数IIf(x>0,-x,x)有相同结果的代数式是___B____。 A.|x| B.-|x| C.x D.-x 17.把数学表达式
5x32y6表示为正确的VB表达式应该是___D____。
A.(5x+3)/(2y-6) B.x*5+3/2*y-6 C.(5*x+3)(2*y-6) D.(x*5+3)/(y*2-6)
18.以下关系表达式中,其值为True的是_____B__。 Ascii码 A 65 a 97
A.\"XYZ\">\"XYz\" B.\"VisualBasic\"<>\"visualbasic\" C.\"the\"=\"there\" D.\"Integer\"<\"Int\"
19.若变量a未事先定义而直接使用(例如:a=0),则变量a的类型是___D____。
A.Integer B.String C.Boolean D.Variant 20.在Visual Basic中,表达式3*2\\5 Mod 3的值是____A_____。
A.1 B.0 C.3 D.出现错误提示
21.设x=3.3,y=4.5,表达式x-Int(x)+Fix(y)的值是____C____。Int(n):取<=n的最大整数;Fix(n):取n的整数部分
A.3.5 B.4.8 C.4.3 D.4.7 22.以下关于窗体的叙述中,错误的是____D____。
A.窗体的Name属性用于标识一个窗体
B.运行程序时改变窗体大小,能够触发窗体的Resize事件 C.窗体的Enabled属性为False时,不能响应单击窗体的事件 D.程序运行期间,可以改变Name属性值 23.设有如下变量声明语句: Dim a,b As Boolean
则下面叙述中正确的是___B_____。
A.a和b都是布尔型变量
B.a是变体型变量,b是布尔型变量 C.a是整型变量,b是布尔型变量 D.a和b都是变体型变量
24.为了使标签具“透明”的显示效果,需要设置的属性是____C____。
A.Caption B.Alignment C.BackStyle D.AutoSize 25.下列叙述中错误的是_____D___。
..
A.列表框与组合框都有List属性
B.列表框有Selected属性,而组合框没有 C.列表框和组合框都有Style属性 D.组合框有Text属性,而列表框没有 26.设窗体文件中有下面的事件过程:
Private Sub Commandl_Click()
Dim s a%=100 Print a End Sub
其中变量a和s的数据类型分别是_____C___。
A.整型,整型 B.变体型,变体型 C.整型,变体型 D.变体型,整型
27.下面有关标准模块的叙述中,错误的是____A____。
A.标准模块不完全由代码组成,还可以有窗体
B.标准模块中的Private过程不能被工程中的其他模块调用 C.标准模块的文件扩展名为.bas
D.标准模块中的全局变量可以被工程中的任何模块引用 28.执行以下程序段
a$=\"Visual Basic Programming\" b$=\"C++\"
c$=UCase(Left$(a$,7)) & b$ & Right$(a$,12) 后,变量c$的值为_____B___。
A.Visual BASIC Programming B.VISUAL C++Programming C.Visual C++Programming
D.VISUAL BASIC Programming
29.为把圆周率的近似值3.14159存放在变量pi中,应该把变量pi定义为___C_____。
A.Dim pi As Integer B.Dim pi(7)As Integer C.Dim pi As Single D.Dim pi As Long
30.以下选项中,不合法的Visual Basic的变量名是____B____。 A.a5b B._xyz C.a_b D.andif
31.窗体上有一个名称为Command1的命令按钮,其中部分代码如下:
Private Sub Command1_Click() Dim a(10)As Integer Dim n As Integer …… Call calc(a,n) …… End Sub
calc过程的首行应该是____A_____。
A.Sub calc(x() As Integer, n As Integer)
B.Public Sub calc(x() As Integer)
C.Private Sub calc(a(n) As Integer, n As Integer)
..
D.Public Sub calc(a As Integer, n As Integer)
32.下面定义窗体级变量a的语句中错误的是___D_____。
A.Dim a% B.Private a% C.Private a As Integer D.Static a% 33.下列可作为Visual Basic变量名的是____D____。
A.A#A B.4ABC C.?xy D.Print_Text
34.下面可以产生20~30(含20和30)的随机整数的表达式是_____B___。
A.Int(Rnd*10+20) B.Int(Rnd*11+20) C.Int(Rnd*20+30) D.Int(Rnd*30+20)
35.设窗体上有一个命令按钮数组,能够区分数组中各个按钮的属性是____B____。
A.Name B.Index C.Caption D.Left 36.下面哪个属性肯定不是框架控件的属性____A____。
A.Text B.Caption C.Left D.Enabled 37.下面控件中,没有Caption属性的是___C_____。
A.复选框 B.单选按钮 C.组合框 D.框架 38.下列叙述中正确的是______C__。
A.MsgBox语句的返回值是一个整数
B.执行MsgBox语句并出现信息框后,不用关闭信息框即可执行其他操作
C.MsgBox语句的第一个参数不能省略 Msgbox(提示,【,按钮】【,标题】) D.如果省略MsgBox语句的第三个参数(Title),则信息框的标题为空 39.表达式2*3^2 + 4*2/2 + 3^2的值是____B____。
A.30 B.31 C.49 D.48 40.以下数组定义语句中,错误的是____C_____。
A.Static a(10) As Integer B.Dim c(3,1 To 4)
C.Dim d(-10) 若省略下界时,默认为0 D.Dim b(0 To 5,1 To 3) As Integer 41.设有如下程序:
Sub f(x As Integer, ByVal y As Integer) x=2*x y=y+x End Sub
Private Sub Command1_Click() Dim a As Integer, b As Integer a=6:b=35 Call f(a, b) Print a, b End Sub
程序运行后,单击命令按钮Command1,输出结果为____D____。
A.6 47 B.12 47 C.6 35 D.12 35 例:Sub s1(ByVal x As Integer, ByVal y As Integer) Dim t As Integer
..
t = x x = y y = t End Sub
Sub s2(x As Integer, y As Integer) Dim t As Integer t = x x = y y = t End Sub
Private Sub Command1_Click() Dim a As Integer, b As Integer a = 12 b = 13
Call s1(a, b) Print a, b Call s2(a, b) Print a, b End Sub
输出结果为什么是12 13 13 12
s1是值传递,形参的改变不影响实参,s2是地址传递,形参的改变影响实参
42.表达式Int(Rnd(0)*50)所产生的随机数范围是_____C____。
A.(0,50) B.(1,50) C.(0,49) D.(1,49) 43.假定一个滚动条的LargeChange属性值为100,则100表示___A______。
A.单击滚动条箭头和滚动框之间某位置时滚动框位置的变化量 B.滚动框位置的最大值
C.拖动滚动框时滚动框位置的变化量 D.单击滚动条箭头时滚动框位置的变化量
44.设窗体上有一个名称为HS1的水平滚动条,如果执行了语句:
HS1.Value=(HS1.Max-HS1.Min)/2+HS1.Min则____C_____。 A.滚动块处于最左端 B.滚动块处于最右端 C.滚动块处于中间位置
D.滚动块可能处于任何位置,具体位置取决于Max、Min属性的值 45.滚动条可以响应的事件是____B_____。
A.Load B.Scroll C.Click D.MouseDown 46.下面不能在信息框中输出\"VB\"的是____D_____。
A.MsgBox\"VB\" B.x=MsgBox(\"VB\") C.MsgBox(\"VB\") D.Call MsgBox\"VB\" 47.用来设置文字字体是否斜体的属性是___D______。
A.FontUnderline B.FontBold C.FontSlope D.FontItalic
48.在窗体上画一个文本框(名称为Textl)和一个标签(名称为Label1),程序运行后,在文本框中每输入一个
..
字符,都会立即在标签中显示文本框中字符的个数。以下可以实现上述操作的事件过程是_____A____。
A.Private Sub Textl_Change()
Label1.Caption=Str(Len(Text1.Text)) End Sub
B.Private Sub Text1_Click()
Label1.Caption=Str(Len(Text1.Text)) End Sub
C.Private Sub Text1_Change() Label1.Caption=Text1.Text End Sub
D.Private Sub Label1_Change()
Label1.Caption=Str(Len(Text1.Text)) End Sub
49.以下不能输出\"Program\"的语句是____D_____。
A.Print Mid(\"VBProgram\",3,7) B.Print Right(\"VBProgram\",7) C.Print Mid(\"VBProgram\",3) D.Print Left(\"VBProgram\",7)
50.现有语句:y=IIf(x>0,x Mod 3,0)设x=10,则y的值是____B____。
A.0 B.1 C.3 D.语句有错 51.以下叙述中正确的是___A______。
A.窗体及窗体上所有控件的事件过程代码都保存在窗体文件中 B.在工程中只有启动窗体可以建立菜单 C.窗体名称必须与窗体文件的名称相同 D.程序一定是从某个窗体开始执行的
52.设x=5,执行语句Print x=x+10,窗体上显示的是___D_____。 A.15 B.5 C.True D.False 53.在窗体上面一个命令按钮,然后编写如下事件过程: Private Sub Command1_Click() MsgBox Str(123+321) End Sub
程序运行后,单击命令按钮,则在信息框中显示的提示信息为___B_____。
A.字符串\"123+321\" B.字符串\"444\" C.数值\"444\" D.空白 54.窗体上有一个名称为Cb1的组合框,程序运行后,为了输出选中的列表项,应使用的语句是___B______。
A.Print Cb1.Selected
B.Print Cb1.List(Cb1.ListIndex) C.Print Cb1.Selected.Text D.Print Cb1.List(ListIndex)
55.设a=5,b=6,c=7,d=8,执行语句x=IIf((a>b)And(c>d),10,20)后,x的值是____B_____。
A.10 B.20 C.30 D.200 56.窗体上有一个名称为Option1的单选按钮数组,程序运行时,当单击某个单选按钮时,会调用下面的事件过程
Private Sub Optionl_Click(Index As Integer)
..
…
End Sub
下面关于此过程的参数Index的叙述中正确的是_____C____。
A.Index为1表示单选按钮被选中,为0表示未选中 B.Index的值可正可负
C.Index的值用来区分哪个单选按钮被选中 D.Index表示数组中单选按钮的数量
57.若看到程序中有以下事件过程,则可以肯定的是,当程序运行时______D___。
Private Sub Click_MouseDown(Button As Integer,_
Shift As Integer,X As Single,Y As Single)
Print \"VB Program\" End Sub
A.用鼠标左键单击名称为\"Commandl\"的命令按钮时,执行此过程 B.用鼠标左键单击名称为\"MouseDown\"的命令按钮时,执行此过程 C.用鼠标右键单击名称为\"MouseDown\"的控件时,执行此过程 D.用鼠标左键或右键单击名称为\"Click\"的控件时,执行此过程
58.在窗体上画两个单选按钮(名称分别为Option1、Option2,标题分别为“宋体”和“黑体”)、 1个复选框(名称为Check1,标题为“粗体”)和1个文本框(名称为Textl,Text属性为“改变文字字体”),窗体外观如图所示。程序运行后,要求“宋体”单选按钮和“粗体”复选框被选中,则以下能够实现上述操作的语句序列是___D_____。
A.Option1.Value=False Check1.Value=True B.Option1.Value=True Check1.Value=0 C.Option2.Value=False Check1.Value=2
D.Option1.Value=True Check1.Value=l
59.窗体上有一个名称为Frame1的框架(如下图),若要把框架上显示的“Frame1”修改为汉字“框架”,下面正确的语句是______B__。
A.Frame1.Name=\"框架\" B.Frame1.Caption=\"框架\" C.Frame1.Text=\"框架\" D.Frame1.Value=\"框架\"
60.为了使文本框同时具有垂直和水平滚动条,应先把MultiLine属性设置为True,然后把ScrollBars属性设置为______D___。
A.0 B.1 C.2 D.3
61.窗体上有一个名称为Command1的命令按钮,其单击事件过程代码如下:
Private Sub Command1_Click() Static x As Variant n=0
..
x=Array(1,2,3,4,5,6,7,8,9,10) While n<=4 x(n)=x(n+5) Print x(n); n=n+1 Wend End Sub
运行程序,单击命令按钮Command1,窗体上显示的是____B____。
A.1 2 3 4 5 B.6 7 8 9 10 C.2 3 4 5 6 D.6 2 3 4 5 62.设有如下数组声明语句:
Dim arr(-2 To 2,0 To 3) As Integer
该数组所包含的数组元素个数是____A_____。
A.20 B.16 C.15 D.12 63.假定有以下程序:
Private Sub Form_Click() a=1:b=a
Do Until a>=5 x=a*b Print b;x a=a+b b=b+a Loop End Sub
程序运行后,单击窗体,输出结果是_____D____。
A. 1 1 B.1 1 C.1 1 D.1 1
2 3 2 4 3 8 3 6
64.为了在窗体上建立2组单选按钮,并且当程序运行时,每组都可以有一个单选按钮被选中,则以下做法中正确的是____D____。
A.把这2组单选按钮设置为名称不同的2个控件数组 B.使2组单选按钮的Index属性分别相同 C.使2组单选按钮的名称分别相同
D.把2组单选按钮分别画到2个不同的框架中
65.语句Print Sgn(-6^2)+Abs(-6^2)+Int(-6^2)的输出结果是___C_____。
A.-36 B.1 C.-1 D.-72
66.设窗体中有一个文本框Text1,若在程序中执行了Text1.SetFocus,则触发___B_____。
A.Text1的SetFocus事件 B.Text1的GotFocus事件 C.Text1的LostFocus事件 D.窗体的GotFocus事件
67.可以产生30~50(含30和50)之间的随机整数的表达式是___A_____。
A.Int(Rnd*21+30) B.Int(Rnd*20+30) C.Int(Rnd*50-Rnd*30) D.Int(Rnd*30+50)
68.在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程:
Private Sub Command1_Click() c=1234
c1=Trim(Str(c))
..
For i=1 To 4
Print ______ Next End Sub
程序运行后,单击命令按钮,要求在窗体上显示如下内容:
1
12 123 1234
则在横线处应填入的内容为___B_____。
A.Right(c1,i) B.Left(c1,i) C.Mid(c1,i,1) D.Mid(c1,i,i) 69.以下叙述中错误的是_____D___。
A.在通用过程中,多个形式参数之间可以用逗号作为分隔符 B.在Print方法中,多个输出项之间可以用逗号作为分隔符 C.在Dim语句中,所定义的多个变量可以用逗号作为分隔符
D.当一行中有多个语句时,可以用逗号作为分隔符 用冒号 70.文本框 Text1 的 KeyDown 事件过程如下:
Private Sub Text1_KeyDown(KeyCode As Integer,Shift As Integer)
… End Sub
其中参数KeyCode的值表示的是发生此事件时___C_____。
A.是否按下了Alt键或Ctrl键 B.按下的是哪个数字键 C.所按的键盘键的键码 D.按下的是哪个鼠标键 71.窗体上有一个名称为Label1的标签和一个名称为Command1的命令按钮。命令按钮的单击事件过程如下:
Private Sub Command1_Click() x=InputBox(\"输入x:\ y=InputBox(\"输入y:\ Label1.Caption=x+y End Sub
运行程序,单击命令按钮,在输入对话框中分别输入2、3,运行的结果是____D_____。
A.程序运行有错误,数据类型不匹配
B.程序运行有错误,InputBox函数的格式不对 C.在Label1中显示5 D.在Label1中显示23
72.现有由多个单选按钮构成的控件数组,用于区别该控件数组中各控件的属性是____B____。 A.Name B.Index C.Caption D.Value
73.在窗体上画一个名称为List1的列表框,列表框中显示若干城市的名称。当单击列表框中的某个城市名时,该城市名消失。下列在List1_Click事件过程中能正确实现上述功能的语句是_____D___。
A.Listl.RemoveItem Listl.Text B.Listl.RemoveItem List1.Clear C.Listl.RemoveItem List1.ListCount D.Listl.RemoveItem List1.ListIndex 74.如果一个直线控件在窗体上呈现为一条垂直线,则可以确定的是____B_____。
A.它的Y1、Y2属性的值相等 B.它的X1、X2属性的值相等
..
C.它的X1、Y1属性的值分别与X2、Y2属性的值相等 D.它的X1、X2属性的值分别与Y1、Y2属性的值相等
75.如果一个直线控件在窗体上呈现为一条水平线,则可以确定的是___A______。
A.它的Y1、Y2属性的值相等 B.它的X1、X2属性的值相等
C.它的X1、Y1属性的值分别与X2、Y2属性的值相等 D.它的X1、X2 属性的值分别与Y1、Y2属性的值相等
76.VB中有3个键盘事件:KeyPress、KeyDown、KeyUp,若光标在Text1文本框中,则每输入一个字母_____A____。
A.这3个事件都会触发 B.只触发KeyPress事件 C.只触发KeyDown、KeyUp事件 D.不触发其中任何一个事件 77.在程序运行时,下面的叙述中正确的是____C_____。
A.用鼠标右键单击窗体中无控件的部分,会执行窗体的Form_Load事件过程 B.用鼠标左键单击窗体的标题栏,会执行窗体的Form_Click事件过程 C.只装入而不显示窗体,也会执行窗体的Form_Load事件过程
D.装入窗体后,每次显示该窗体时,都会执行窗体的Form_Click事件过程 78.假定有以下程序段:
For i=1 To 3
For j=5 To 1 Step -1 Print i*j Next j Next i
则语句Print i*j的执行次数是_____A____。
A.15 B.16 C.17 D.18
79.设窗体上有一个列表框控件List1,含有若干列表项。以下能表示当前被选中的列表项内容的是____C_____。
A.List1.List B.List1.ListIndex C.List1.Text D.List1.Index
80.窗体上有一个名称为HScroll1的滚动条,程序运行后,当单击滚动条两端的箭头时,立即在窗体上显示滚动框的位置(即刻度值)。下面能够实现上述操作的事件过程是____A_____。
A.Private Sub HScroll1_Change() Print HScroll1.Value End Sub B.Private Sub HScroll1_Change() Print HScroll1.SmallChange End Sub
C.Private Sub HScroll1_Scroll() Print HScroll1.Value End Sub
D.Private Sub HScroll1_Scroll() Print HScroll1.Sma11Change End Sub 81.窗体上有一个名称为Shape1的形状控件和由三个命令按钮组成的名称为cmdDraw的控件数组。窗体外观如图所示(从上到下的3个命令按钮的下标值分别为0、1、2)。有事件过程如下:
..
Private Sub cmdDraw_Click(Index As Integer) Select Case Index Case 0
Shape1.Shape=0 Case 1
Shape1.Shape=1 Case 2
Shape1.Shape=3 End Select End Sub
当单击“画圆”命令按钮时,会执行cmdDraw_Click事件过程。以下叙述中正确的是___D_____。 A.Case 2分支有错,此Case后面表达式的值应该与赋给Shape1.Shape的值一致 B.程序运行有错,控件数组的下标应该从1开始 C.Index是形状控件的参数
D.程序正常运行,形状控件被显示为圆形 82.设有分段函数:
以下表示上述分段函数的语句序列中错误的是___A____。
A.Select Case x Case Is<0 y=5 Case Is<=5,Is>0 y=2*x Case Else y=x*x+1
B.If x<0 Then
y=5
ElseIf x<=5 Then
y=2*x Else
y=x*x+1 End If
C.y=IIf(x<0,5,IIf(x<=5,2*x,x*x+1)) D.If x<0 Then y=5
If x<=5 And x>=0 Then y=2*x If x>5 Then y=x*x+1
83.列表框中的项目保存在一个数组中,这个数组的名字是___C____。
A.Column B.Style C.List D.MultiSeleet 84.设a=2,b=3,c=4,d=5,则下面语句的输出是____A____。
Print 3>2*b Or a=c And b<>c Or c>d A.False B.1 C.True D.-1
85.在窗体上画一个名称为Command1的命令按钮。单击命令按钮时执行如下事件过程:
Private Sub Command1_Click()
..
a$=\"software and hardware\" b$=Right(a$,8) c$=Mid(a$,1,8)
MsgBox a$,,b$,c$,1 End Sub
则在弹出的信息框标题栏中显示的标题是____B____。
A.software and hardware B.hardware C.software D.1
86.下面关于标准模块的叙述中错误的是____B____。
A.标准模块中可以声明全局变量
B.标准模块中可以包含一个Sub Main过程,但此过程不能被设置为启动过程 C.标准模块中可以包含一些Public过程 D.一个工程中可以含有多个标准模块
87.窗体上有名称为Command1的命令按钮和名称为Text1的文本框
Private Sub Command1_Click()
Text1.Text=\"程序设计\" Text1.SetFocus End Sub
Private Sub Text1_GotFocus()
Text1.Text=\"等级考试\" End Sub
运行以上程序,单击命令按钮后____B____。
A.文本框中显示的是\"程序设计\",且焦点在文本框中 B.文本框中显示的是\"等级考试\",且焦点在文本框中 C.文本框中显示的是\"程序设计\",且焦点在命令按钮上 D.文本框中显示的是\"等级考试\",且焦点在命令按钮上
88.在窗体上画两个文本框(名称分别为Textl和Text2)和一个命令按钮(名称为Command1),然后编写如下事件过程:
Private Sub Command1_Click() x=0
Do While x<50 x=(x+2)*(x+3) n=n+1 Loop
Text1.Text=Str(n) Text2.Text=Str(x) End Sub
程序运行后,单击命令按钮,在两个文本框中显示的值分别为____B____。
A.1和0 B.2和72 C.3和50 D.4和168
89.设a=4,b=5,c=26,执行语句Print aA.True B.False C.出错信息 D.0
90.若已把一个命令按钮的 Default 属性设置为 True,则下面可导致按钮的Click事件过程被调用的操作是___C_____。
A.用鼠标右键单击此按钮 B.按键盘上的Esc键
..
C.按键盘上的回车键 D.用鼠标右键双击此按钮
91.如果一个正整数从高位到低位上的数字依次递减,则称其为降序数(如:9632是降序数,而8516则不是降序数)。现编写如下程序,判断输入的正整数是否为降序数。
Private Sub Command1_Click() Dim n As Long
Dim flag As Boolean
n=InputBox(\"输入一个正整数\") s=Trim(Str(n)) For i=2 To Len(s)
If Mid(s,i-1,1) Print n;\"是降序数\" Else Print n;\"不是降序数\" End If End Sub 运行以上程序,发现有错误,需要对给flag变量赋值的If语句进行修改。以下正确的修改是_____B____。 A.If i=Len(s) + 1 Then flag=False Else flag=True B.If i=Len(s) + l Then flag=True Else flag=False C.If i=Len(s) -1 Then flag=False Else flag=True D.If i=Len(s) - 1 Then flag=True Else flag=False 92.设程序中有如下语句: x=InputBox(\"输入\",\"数据\Print x 运行程序,执行上述语句,输入5并单击输入对话框上的“取消”按钮,则窗体上输出______D___。 A.0 B.5 C.100 D.空白 93.有人编写了如下程序: Private Sub Form_Click() Dim s As Integer,x As Integer s=0 x=0 Do While s=10000 x=x+1 s=s+x ^ 2 Loop Print s End Sub 222 上述程序的功能是:计算s=1+2+3+…+n+…,直到s>10000为止。程序运行后,发现得不到正确的结果,必须进行修改。下列修改中正确的是_____B____。 A.把x=0改为x=1 B.把Do While s=10000改为Do While s<=10000 C.把Do While s=10000改为Do While s>10000 .. D.交换x=x+1和s=s+x ^ 2的位置 94.窗体Form1上有一个名称为Command1的命令按钮,以下对应窗体单击事件的事件过程是_____B____。 A.Private Sub Form1_Click() ... End Sub B.Private Sub Form_Click() ... End Sub C.Private Sub Command1_Click() ... End Sub D.Private Sub Command_Click() ... End Sub 95.在窗体上画一个文本框(名称为Text1)和一个标签(名称为Label1),程序运行后,如果在文本框中输入文本,则标签中立即显示相同的内容。以下可以实现上述操作的事件过程是______A__。 A.Private Sub Text1_Change() Label1.Caption=Text1.Text End Sub B.Private Sub Label1_Change() Label1.Caption=Text1.Text End Sub C.Private Sub Text1_Click() Label1.Caption=Text1.Text End Sub D.Private Sub Label1_Click() Label1.Caption=Text1.Text End Sub 96.设窗体的名称为Form1,标题为Win,则窗体的MouseDown事件过程的过程名是____C____。 A.Forml_MouseDown B.Win_MouseDown C.Form_MouseDown D.MouseDown_Form1 97.设窗体上有名称为Option1的单选按钮,且程序中有语句: If Option1.Value=True Then 下面语句中与该语句不等价的是____C____。 A.If Option1.Value Then B.If Option1=True Then C.If Value=True Then D.If Option1 Then 98.阅读程序: Private Sub Form_Click() a=0 For j=1 To 15 a=a+j Mod 3 Next j Print a End Sub .. 程序运行后,单击窗体,输出结果是____D____。 A.105 B.1 C.120 D.15 99.执行下列语句: strInput=InputBox(\"请输入字符串\字符串对话框\字符串\") 将显示输入对话框。此时如果直接单击“确定”按钮,则变量strInput的内容是_____C___。 A.\"请输入字符串\" B.\"字符串对话框\" C.\"字符串\" D.空字符串 100.能够存放组合框的所有项目内容的属性是__C_______。 A.Caption B.Text C.List D.Selected 101.现有以下程序: Private Sub Command1_Click() c1=0 c2=0 For i=1 To 100 If i Mod 3=0 Then c1=c1+1 ElseIf i Mod 7=0 Then c2=c2+1 End If Next Print c1+c2 End Sub 此程序运行后输出的是在1~100范围内___B______。 A.同时能被3和7整除的整数个数 B.能被3或7整除的整数个数(同时被3和7整除的数只记一次) C.能被3整除,而不能被7整除的整数个数 D.能被7整除,而不能被3整除的整数个数 102.现有如下一段程序: Option Base 1 Private Sub Command1_Click() Dim a a=Array(3,5,7,9) x=1 For i=4 To 1 Step-1 s=s+a(i)*x x=x*10 Next Print s End Sub 执行程序,单击Command1命令按钮,执行上述事件过程,输出结果是___C_____。 A.9753 B.35 C.3579 D.79 103.设有如下程序: Private Sub Form_Click() Dim s As Long,f As Long .. Dim n As Integer,i As Integer f=1 n=4 For i=1 To n f=f*i s=s+f Next i Print s End Sub 程序运行后,单击窗体,输出结果是_____D___。 A.32 B.35 C.34 D.33 104.默认情况下,下面声明的数组的元素个数是__D______。6*5=30 Dim a(5,-2 To 2) A.20 B.24 C.25 D.30 105.以下说法中错误的是____C____。 A.如果把一个命令按钮的Default属性设置为True,则按回车键与单击该命令按钮的作用相同 B.可以用多个命令按钮组成命令按钮数组 C.命令按钮只能识别单击(Click)事件 D.通过设置命令按钮的Enabled属性,可以使该命令按钮有效或禁用 106.下面正确使用动态数组的是___A_____。 A.Dim art()As Integer … ReDim arr(3,5) B.Dim arr()As Integer … ReDim arr(50) As String C.Dim arr() … ReDim arr(50) As Integer D.Dim arr(50) As Integer … ReDim arr(20) 107.设窗体上有1个水平滚动条,已经通过属性窗口把它的Max属性设置为1,Min属性设置为100。下面叙述中正确的是____A____。 A.程序运行时,若使滚动块向左移动,滚动条的Value属性值就增加 B.程序运行时,若使滚动块向左移动,滚动条的Value属性值就减少 C.由于滚动条的Max属性值小于Min属性值,程序会出错 D.由于滚动条的Max属性值小于Min属性值,程序运行时滚动条的长度会缩为一点,滚动块无法移动 108.以下说法中正确的是______A__。 A.当焦点在某个控件上时,按下一个字母键,就会执行该控件的KeyPress事件过程 B.因为窗体不接受焦点,所以窗体不存在自己的KeyPress事件过程 C.若按下的键相同,KeyPress事件过程中的KeyAscii参数与KeyDown事件过程中的KeyCode参数的值也相同 D.在KeyPress事件过程中,KeyAscii参数可以省略 .. 109.窗体上有Command1、Command2两个命令按钮。现编写以下程序: Option Base 0 Dim a()As Integer,m As Integer Private Sub Command1_Click() m=InputBox(\"请输入一个正整数\") ReDim a(m) End Sub Private Sub Command2_Click() m=InputBox(\"请输入一个正整数\") ReDim a(m) End Sub 运行程序时,单击Command1后输入整数10,再单击Command2后输入整数5,则数组a中元素的个数是_____B___。 0---5 6个 A.5 B.6 C.10 D.11 110.要使两个单选按钮属于同一个框架,正确的操作是____A_____。 A.先画一个框架,再在框架中画两个单选按钮 B.先画一个框架,再在框架外画两个单选按钮,然后把单选按钮拖到框架中 C.先画两个单选按钮,再画框架将单选按钮框起来 D.以上三种方法都正确 111.窗体上有一个名称为Command1的命令按钮,并有如下程序: Private Sub Command1_Click() x=15 Do While x>0 x=x-3 x=IIf(Int(x/5)=x/5,x+2,x) Loop Print x End Sub 程序运行后,单击命令按钮Command 1,输出结果为___B_____。X=-15 A.0 B.-1 C.-2 D.-3 112.设有一个命令按钮Command1的事件过程以及一个函数过程。程序如下: Private Sub Command1_Click() Static x As Integer x=f(x+5) Cls Print x End Sub Private Function f(x As Integer)As Integer f=x+x End Function 连续单击命令按钮3次,第3次单击命令按钮后,窗体上显示的计算结果是_____D_____。 A.10 B.30 C.60 D.70 113.阅读下面的程序段: a=0 .. For i=1 To 3 For j=1 To i For k=j To 3 a=a+1 Next k Next j Next i 执行上面的程序段后,a的值为_____C____。 A.3 B.9 C.14 D.21 114.设有如下程序段: Dim a(10) ... For Each x In a Print x; Next x 在上面的程序段中,变量x必须是____B____。 A.整型变量 B.变体型变量 C.动态数组 D.静态数组 115.以下关于局部变量的叙述中错误的是_____D___。 A.在过程中用Dim语句或Static语句声明的变量是局部变量 B.局部变量的作用域是它所在的过程 C.在过程中用Static语句声明的变量是静态局部变量 D.过程执行完毕,该过程中用Dim或Static语句声明的变量即被释放 116.下面是求最大公约数的函数的首部 Function gcd(ByVal x As Integer,ByVal y As Integer)As Integer 若要输出8、12、16这3个数的最大公约数,下面正确的语句是_____D___。 A.Print gcd(8,12),gcd(12,16),gcd(16,8) B.Print gcd(8,12,16) C.Print gcd(8),gcd(12),gcd(16) D.Print gcd(8,gcd(12,16)) 117.有如下过程代码: Sub var_dim() Static numa As Integer Dim numb As Integer numa=numa+2 numb=numb+1 print numa;mumb End Sub 连续3次调用var_dim过程,第3次调用时的输出是______C__。 A.2 1 B.2 3 C.6 1 D.6 3 118.语句Dim a(-3 To 4,3 To 6)As Integer定义的数组的元素个数是____D____。 A.18 B.28 C.21 D.32 119.在窗体上画一个命令按钮和一个标签,其名称分别为Command1和Label1,然后编写如下事件过程: Private Sub Command1_Click() Counter=0 .. For i=1 To 4 For j=6 To 1 Step -2 Counter=Counter+1 Next j Next i Label1.Caption=Str(Counter) End Sub 程序运行后,单击命令按钮,标签中显示的内容是___B_____。 A.11 B.12 C.16 D.20 120.设窗体上有一个标签Label1和一个计时器Timer1,Timer1的Interval属性被设置为1000,Enabled属性被设置为True。要求程序运行时每秒在标签中显示一次系统当前时间。以下可以实现上述要求的事件过程是______B__。 A.Private Sub Timer1_Timer() Label1.Caption=True End Sub B.Private Sub Timer1_Timer() Label1.Caption=Time$ End Sub C.Private Sub Timer1_Timer() Label1.Interval=1 End Sub D.Private Sub Timer1_Timer() For k=1 To Timer1.Interval Label1.Caption=Timer Next k End Sub 121.设菜单编辑器中各菜单项的属性设置如下表所示: 序号 1 2 3 4 5 标题 File Open Save Exit Help 名称 File OpenFile SaveFile EndOfAll ShowHelp 复选 √ 有效 √ √ √ 可见 √ √ √ √ 内缩符号 无 1 1 1 1 针对上述属性设置,以下叙述中错误的是____A____。 A.属性设置有错,存在“标题”与“名称”重名现象 B.运行程序,序号为“3”的菜单项不显示 C.运行程序,序号为“4”的菜单项不可用 D.运行程序,序号为“5”的菜单项前显示“√” 122.以下关于菜单设计的叙述中错误的是____C___。 A.各菜单项可以构成控件数组 B.每个菜单项可以看成是一个控件 C.设计菜单时,菜单项的“有效”未选,即D.菜单项只响应单击事件 123.设有如下程序: .. ,表示该菜单项不显示 Private Sub Form_Click() Cls a$=\"123456\" For i=1 To 6 Print Tab(12-i);Left(a$,i) Next i End Sub 程序运行后,单击窗体,要求结果如图所示,则在下划线处应填入的内容为___A____。 A.Left(a$,i) B.Mid(a$,8-i,i) C.Right(a$,i) D.Mid(a$,7,i) 124.设有以下函数过程 Private Function Fun(a()As Integer,b As String)As Integer ... End Function 若已有变量声明: Dim x(5) As Integer, n As Integer, ch As String 则下面正确的过程调用语句是____A____。 A.x(0)=Fun(x,\"ch\") B.n=Fun(n,ch) C.Call Fun x,\"ch\" D.n=Fun(x(5),ch) 125.以下程序段的输出结果是_____B___。 x=1 y=4 Do Until y>4 x=x*y y=y+1 Loop Print x A.1 B.4 C.8 D.20 126.有下面的程序段,其功能是按图1所示的规律输出数据 Dim a(3,5)As Integer For i=1 To 3 For j=1 To 5 a(i,j)=i+j Print a(i,j); Next Print Next 若要按图2所示的规律继续输出数据,则接在上述程序段后面的程序段应该是____A____。 A.For i=1 To 5 B.For i=1 To 3 For j=1 To 3 For j=1 To 5 Print a(j,i); Print a(j,i); Next Next Print Print .. Next Next C.For j=1 To 5 D.For i=l To 5 For i=1 To 3 For j=1 To 3 Print a(j,i); Print a(i,j); Next Next Print Print Next Next 127.在窗体上画1个命令按钮,并编写如下事件过程: Private Sub Command1_Click() For i=5 To 1 Step -0.8 Print Int(i); Next i End Sub 运行程序,单击命令按钮,窗体上显示的内容为___A_____。 A.5 4 3 2 1 1 B.5 4 3 2 1 C.4 3 2 1 1 D.4 4 3 2 1 1 128.在窗体上画一个命令按钮,其名称为Commandl,然后编写如下代码: Option Base 1 Private Sub Command1_Click() Dim a 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 程序运行后,单击命令按钮,其输出结果是___B_____。 A.4321 B.1234 C.34 D.12 129.在窗体上画一个名为Command1的命令按钮,然后编写以下程序: Private Sub Command1_Click() Dim m(10)As Integer For k=1 To 10 m(k)=12-k Next k x=8 Print m(2+m(x)) End Sub 运行程序,单击命令按钮,在窗体上显示的是___A_____。 A.6 B.5 C.7 D.8 130.设有如图所示窗体和以下程序: .. Private Sub Command1_Click() Text1.Text=\"Visual Basic\" End Sub Private Sub Text1_LostFocus() If Text1.Text<>\"BASIC\" Then Text1.Text=\"\" Text1.SetFocus End If End Sub 程序运行时,在Text1文本框中输入\"Basic\"(如图所示),然后单击Command1 按钮,则产生的结果是____A____。 A.文本框中无内容,焦点在文本框中 B.文本框中为\"Basic\",焦点在文本框中 C.文本框中为\"Basic\",焦点在按钮上 D.文本框中为\"Visual Basic\",焦点在按钮上 131.以下关于通用对话框的叙述中,错误的是____D____。 A.若没有指定InitDir属性值,则起始目录为当前目录 B.用一个通用对话框控件可以建立几种不同的对话框 C.FileTitle属性指明了文件对话框中所选择的文件名 D.文件对话框用属性FilterIndex指定默认过滤器,它是一个从0开始的整数 132.以下关于多窗体的叙述中,正确的是___A____。 A.任何时刻,只有一个当前窗体 B.向一个工程添加多个窗体,存盘后生成一个窗体文件 C.打开一个窗体时,其他窗体自动关闭 D.只有第一个建立的窗体才是启动窗体 133.设有如下程序: Private Sub Form_Click() Dim i As Integer,x As String,y As String x=\"ABCDEFG\" For i=4 To 1 Step-1 y=Mid(x,i,i)+y Next i Print y End Sub 程序运行后,单击窗体,输出结果为____A___。 A.ABCCDEDEFG B.AABBCDEFG C.ABCDEFG D.AABBCCDDEEFFGG 134.假定用下面的语句打开文件: Open \"File1.txt\" For Input As #1 .. 则不能正确读文件的语句是_____D___。 A.Input #1,ch$ B.Line Input #1,ch$ C.ch$=Input$(5,#l) D.Read #1,ch$ 135.如果执行一个语句后弹出如图所示的窗口,则这个语句是_____D___。 A.InputBox(\"输入框\请输入VB数据\") B.x=InputBox(\"输入框\请输入VB数据\") C.InputBox(\"请输入VB数据\输入框\") D.x=InputBox(\"请输入VB数据\输入框\") 136.窗体上有一个Text1文本框,一个Command1命令按钮,并有以下程序 Private Sub Command1_click() Dim n If Text1.Text<>\"123456\" Then n=n+1 print \"口令输入错误\" & n & \"次\" End If End Sub 希望程序运行时得到左图所示的效果,即:输入口令,单击“确认口令”命令按钮,若输入的口令不是“123456”,则在窗体上显示输入错误口令的次数。但上面的程序实际显示的是右图所示的效果,程序需要修改。下面修改方案中正确的是_____D___。 A.在Dim n语句的下面添加一句:n=0 B.把Print\"口令输入错误\" & n &\"次\"改为Print\"口令输入错误\"+n+\"次\" C.把Print\"口令输入错误\" & n & \"次\"改为Print\"口令输入错误\"& Str(n) & \"次\" D.把Dim n改为Static n 137.在窗体上画一个命令按钮,并编写如下事件过程: Private Sub Command1_Click() Dim a(3,3) For m=1 To 3 For n=1 To 3 If n=m Or n=4-m Then a(m,n)=m+n Else a(m,n)=0 End If .. Print a(m,n); Next n Print Next m End Sub 运行程序,单击命令按钮,窗体上显示的内容为__B______。 A.2 0 0 B. 2 0 4 0 4 0 0 4 0 0 0 6 4 0 6 C.2 3 0 D. 2 0 0 3 4 0 0 4 5 0 0 6 0 5 6 138.假定通过复制、粘贴操作建立了一个命令按钮数组Command1,以下说法中错误的是____D____。 A.数组中每个命令按钮的名称(Name属性)均为Command1 B.若未做修改,数组中每个命令按钮的大小都一样 C.数组中各个命令按钮使用同一个Click事件过程 D.数组中每个命令按钮的Index属性值都相同 139.以下关于过程及过程参数的描述中,错误的是___C_____。 A.调用过程时可以用控件名称作为实际参数 B.用数组作为过程的参数时,使用的是“传地址”方式 C.只有函数过程能够将过程中处理的信息传回到调用的程序中 D.窗体(Form)可以作为过程的参数 140.窗体上有一个名称为Command1的命令按钮,其事件过程如下: Private Sub Command1_Click() x=\"VisualBasicProgramming\" a=Right(x,11) b=Mid(x,7,5) c=MsgBox(a,,b) End Sub 运行程序后单击命令按钮。以下叙述中错误的是___D_____。 A.信息框的标题是Basic B.信息框中的提示信息是Programming C.c的值是函数的返回值 D.MsgBox的使用格式有错 141.窗体上有一个名称为Command1的命令按钮,并有如下程序: Private Sub Command1_Click() Dim m As Integer,n As Integer m=InputBox(\"输入第一个数\") n=InputBox(\"输入第二个数\") Do While m<>n Do While m>n m=m-n Loop Do While n>m .. n=n-m Loop Loop Print m End Sub 该程序的功能是____A____。 A.求数值m和n的最大公约数 B.求数值m和n的最小公倍数 C.求数值m和n中的较大数 D.求数值m和n中的较小数 142.窗体上有一个名称为CommonDialog1的通用对话框,一个名称为Command1的命令按钮,并有如下事件过程: Private Sub Command1_Click() CommonDialog1.DefaultExt=\"doc\" CommonDialog1.FileName=\"VB.txt\" CommonDialog1.Filter=\"All(*.*)|*.*|Word|*.Doc|\" CommonDialog1.FilterIndex=1 CommonDialog1.ShowSave End Sub 运行上述程序,如下叙述中正确的是____A______。 A.打开的对话框中文件“保存类型”框中显示“All(*.*)” B.实现保存文件的操作,文件名是VB.txt C.DefaultExt属性与FileName属性所指明的文件类型不一致,程序出错 D.对话框的Filter属性没有指出txt类型,程序运行出错 143.设有如下程序: Private Sub Form_Click() Dim ary(1 To 5)As Integer Dim i As Integer Dim sum As Integer For i=1 To 5 ary(i)=i+1 sum=sum+ary(i) Next i Print sum End Sub 程序运行后,单击窗体,则在窗体上显示的是___C______。 A.15 B.16 C.20 D.25 144.下面程序的执行结果是____D____。 Private Sub Command1_Click() a=10 For k=1 To 5 Step-1 a=a-k Next k Print a;k .. End Sub A.-5 6 B.-5 -5 C.10 0 D.10 1 145.有如下事件过程: Private Sub Form_Click() Dim n As Integer x=0 n=InputBox(\"请输入一个整数\") For i=1 To n For j=1 To i x=x+1 Next j Next i Print x End Sub 程序运行后,单击窗体,如果在输入对话框中输入5,则在窗体上显示的内容是___C_____。 A.13 B.14 C.15 D.16 146.要求当鼠标在图片框P1中移动时,立即在图片框中显示鼠标的位置坐标。下面能正确实现上述功能的事件过程是____C____。 A.Private Sub P1_MouseMove(Button As Integer,Shift As Integer,X As Single,Y As Single) Print X,Y End Sub B.Private Sub P1_MouseDown(Button As Integer,Shift As Integer,X As Single,Y As Single) Picture.Print X,Y End Sub C.Private Sub P1_MouseMove(Button As Integer,Shift As Integer,X As Single,Y As Single) P1.Print X,Y End Sub D.Private Sub Form_MouseMove(Button As Integer,Shift As Integer,X As Single,Y As Single) P1.Print X,Y End Sub 147.设有以下函数过程: Function fun(a As Integer,b As Integer) Dim c As Integer If ac=a:a=b:b=c End If c=0 Do c=c+a Loop Until c Mod b=0 Fun=c End Function 若调用函数fun时的实际参数都是自然数,则函数返回的是___B_____。 A.a、b的最大公约数 B.a、b的最小公倍数 .. C.a除以b的余数 D.a除以b的商的整数部分 148.在窗体上画一个命令按钮,名称为Commandl,然后编写如下代码: Option Base 0 Private Sub Command1_Click() Dim A1(4)As Integer,A2(4)As Integer For k=0 To 2 A1(k+1)=InputBox(\"请输入一个整数\") A2(3-k)=A1(k+1) Next k Print A2(k) End Sub 程序运行后,单击命令按钮,在输入对话框中依次输入2、4、6,则输出结果为___C_____。 A.0 B.1 C.2 D.3 149.在窗体上画一个名称为Command1的命令按钮,再画两个名称分别为Label1、Label2的标签,然后编写如下程序代码: Private X As Integer Private Sub Command1_Click() X=5:Y=3 Call proc(X,Y) Label1.Caption=X Label2.Caption=Y End Sub Private Sub proc(a As Integer,ByVal b As Integer) X=a*a Y=b+b End Sub 程序运行后,单击命令按钮,则两个标签中显示的内容分别是__A______。 A.25和3 B.5和3 C.25和6 D.5和6 150.设工程文件包含两个窗体文件Form1.frm、Form2.frm及一个标准模块文件Module1.bas,两个窗体上分别只有一个名称为Command1 的命令按钮。 Form1 的代码如下: Public x As Integer Private Sub Form_Load() x=1:y=5 End Sub Private Sub Command1_Click() Form2.Show End Sub Form2 的代码如下: Private Sub Command1_Click() Print Form1.x,y End Sub Module1 的代码如下: Public y As Integer .. 运行以上程序,单击Form1 的命令按钮Command1,则显示Form2;再单击Form2上的命令按钮Command1,则窗体上显示的是__A______。 A.1 5 B.0 5 C.0 0 D.程序有错 151.窗体上有一个名称为Command1的命令按钮,其单击事件过程及有关函数过程如下: Private Sub Command1_Click() Dim n As Integer n=add(5,10) Print n End Sub Function add(v1 As Integer,v2 As Integer,Optional v3)As Integer If Not IsMissing(v3)Then add=v1+v2+v3 Else add=v1+v2 End If End Function 运行程序,单击命令按钮,以下叙述中正确的是____C____。 A.程序不能正常运行,因为函数add的参数定义有错 B.程序不能正常运行,因为函数定义与函数调用语句的参数个数不匹配 C.程序能正常运行,结果是在窗体上显示15 D.程序能正常运行,结果是在窗体上显示510v3 152.设程序中有如下数组定义和过程调用语句: Dim a(10) As Integer …… Call p(a) 如下过程定义中,正确的是___B______。 A.Private Sub p(a As Integer) B.Private Sub p(a() As Integer) C.Private Sub p(a(10) As Integer) D.Private Sub p(a(n) As Integer) 153.有一个数列,它的前3个数为0,1,1,此后的每个数都是其前面3个数之和,即 0,1,1,2,4,7,13,24, ... 要求编写程序输出该数列中所有不超过1000的数。 某人编写程序如下: Private Sub Form_Click() Dim i As Integer, a As Integer, b As Integer Dim c As Integer, d As Integer a=0:b=1:c=1 d=a+b+c i=5 While d<=1000 Print d; a=b:b=c:c=d d=a+b+c .. i=i+1 Wend End Sub 运行上面的程序,发现输出的数列不完整,应进行修改。以下正确的修改是__D_______。 A.把While d<=1000改为While d>1000 B.把i=5改为i=4 C.把i=i+1移到While d<=1000的下面 D.在i=5的上面增加一个语句:Print a;b;c; 154.设窗体上有一个名为Text1的文本框和一个名为Command1的命令按钮,并有以下事件过程: Private Sub Command1_Click() x!=Val(Text1.Text) Select Case x Case Is<-10,Is>=20 Print\"输入错误\" Case Is<0 Print 20-X Case Is<10 Print 20 Case Is<=20 Print x+10 End Select End Sub 程序运行时,如果在文本框中输入-5,则单击命令按钮后的输出结果是____C____。 A.5 B.20 C.25 D.输入错误 155.请阅读程序: Private Sub Form_Click() Dim a(1 To 4) As Integer For i = 1 To 4 a(i) = 2 * i Next subP a() For i = 1 To 4 Print a(i); Next End Sub Sub subP(b() As Integer) b(1) = 5 End Sub 运行上面的程序,单击命令按钮,则输出结果是____A____。 A.5 4 6 8 B.2 4 6 8 C.没有输出 D.出错 156.计算π的近似值的一个公式是π/4=1-1/3+1/5-1/7+…+(-1)n-1/2n-1。某人编写下面的程序用此公式计算并输出π的近似值: Private Sub Command1_Click() .. PI=1:Sign=1 n=20000 For k=3 To n sign=-sign PI=PI+sign/k Next k Print PI*4 End sub 运行后发现结果为3.22751,显然,程序需要修改。下面修改方案中正确的是__C______。 A.把For k=3 To n改为For k=1 To n B.把n=20000改为n=20000000 C.把For k=3 To n改为For k=3 To n Step 2 D.把PI=1改为PI=0 157.窗体上有1个名称为Text1的文本框;1个名称为Timer1的计时器控件,其Interval属性值为5000,Enabled属性值是True。Timer1的事件过程如下: Private Sub Timer1_Timer() Static flag As Integer If flag=0 Then flag=1 flag=-flag If flag=1 Then Text1.ForeColor=&HFF& '&HFF&为红色 Else Text1.ForeColor=&HC000& '&HC000&为绿色 End If End Sub 以下叙述中正确的是____C____。 A.每次执行此事件过程时,flag的初始值均为0 B.flag的值只可能取0或1 C.程序执行后,文本框中的文字每5秒改变一次颜色 D.程序有逻辑错误,Else分支总也不能被执行 158.以下关于函数过程的叙述中,正确的是___A_____。 A.函数过程形参的类型与函数返回值的类型没有关系 B.在函数过程中,过程的返回值可以有多个 C.当数组作为函数过程的参数时,既能以传值方式传递,也能以传址方式传递 D.如果不指明函数过程参数的类型,则该参数没有数据类型 159.在窗体上有两个名称分别为Text1、Text2的文本框,一个名称为Command1的命令按钮。运行后的窗体外观如图所示。设有如下的类型和变量声明: Private Type Person name As String*8 major As String*20 End Type Dim p As Person 设文本框中的数据已正确地赋值给Person类型的变量p,当单击“保存”按钮时,能够正确地把变量中的数据写入随机文件Test2.dat中的程序段是_____C___。 .. A.Open \"c:\\\\Test2.dat\" For Output As #1 Put #1,1,p Close #1 B.Open \"c:\\\\Test2.dat\" For Random As #1 Get #1,1,p Close #1 C.Open \"c:\\\\Test2.dat\" For Random As #1 Len=Len(p) Put #1,1,p Close #1 D.Open \"c:\\\\Test2.dat\" For Random As #1 Len=Len(p) Get #1,1,p Close #1 160.窗体上有一个名称为Text1的文本框,一个名称为Command1的命令按钮。窗体文件的程序如下: Private Type x a As Integer b As Integer End Type Private Sub Command1_Click() Dim y As x y.a=InputBox(\"\") If y.a\\2=y.a/2 Then y.b=y.a*y.a Else y.b=Fix(y.a/2) End If Text1.Text=y.b End Sub 对以上程序,下列叙述中错误的是___D_____。 A.x是用户定义的类型 B.InputBox函数弹出的对话框中没有提示信息 C.若输入的是偶数,y.b的值为该偶数的平方 D.Fix(y.a/2)把y.a/2的小数部分四舍五入,转换为整数返回 161.目录列表框Path属性所表示的含义是___A_____。 A.当前驱动器或指定驱动器上的路径 B.当前驱动器或指定驱动器上的某目录下的文件列表 C.根目录下的文件列表 D.指定路径下的文件列表 162.若要获得组合框中输入的数据,可使用的属性是___C_____。 A.ListIndex B.Caption C.Text D.List 163.下面的语句用Array函数为数组变量a的各元素赋整数值: a=Array(1,2,3,4,5,6,7,8,9) 针对a的声明语句应该是_____A___。 A.Dim a B.Dim a As Integer C.Dim a(9)As Integer D.Dim a() As Integer .. 164.设有如下程序 Private Sub Command1_Click() x=10:y=0 For i=1 To 5 Do x=x-2 y=y+2 Loop Until y>5 Or x<-1 Next End sub 运行程序,其中Do循环执行的次数是_____C___。 A.15 B.10 C.7 D.3 165.Fibonacci数列的规律是:前2个数为1,从第3个数开始,每个数是它前2个数之和,即:1,1,2,3,5,8,13,21,34,55,89,…。某人编写了下面的函数,判断大于1的整数x是否是Fibonacci数列中的某个数,若是,则返回True,否则返回False。 Function Isfab(x As Integer)As Boolean Dim a As Integer,b As Integer,c As Integer,flag As Boolean flag=False a=1:b=1 Do While xif x=b Then flag=True Loop Isfab=flag End Function 测试时发现对于所有正整数x,函数都返回False,程序需要修改。下面的修改方案中正确的是_____C___。 A.把a=b与b=c的位置互换 B.把c=a+b移到b=c之后 C.把Do While xb D.把If x=b Then flag=True改为If x=a Then flag=True 166.下面程序计算并输出的是___A_____。 Private Sub Command1_Click() a=10:s=0 Do s=s+a*a*a a=a-1 Loop until a <=0 Print s End sub A.13+23+33+…103的值 B.10!+…+3!+2!+1!的值 C.(1+2+3+…+10)3的值 D.10个103的和 167.为计算10+21+22+23+24+…+210的值,并把结果显示在文本框Text1中,若编写如下事件过程: .. Private Sub Command1_Click() Dim a%,s%,k% s=1 a=2 For k=2 To 10 a=a*2 s=s+a Next k Text1.Text=s End Sub 执行此事件过程后发现结果是错误的,为能够得到正确结果,应做的修改是____D____。 A.把s=1改为s=0 B.把For k=2 To 10改为For k=l To 10 C.交换语句s=s+a和a=a*2的顺序 D.同时进行B、C两种修改 168.在窗体上画两个标签和一个命令按钮,其名称分别为Label1、Label2和Command1,然后编写如下程序: Private Sub func(L As Label) L.Caption=\"1234\" End Sub Private Sub Form_Load() Label1.Caption=\"ABCDE\" Label2.Caption=10 End Sub Private Sub Command1_Click() a=Val(Label2.Caption) Call func(Label1) Label2.Caption=a End Sub 程序运行后,单击命令按钮,则在两个标签中显示的内容分别为____D____。 A.ABCD和10 B.1234和100 C.ABCD和100 D.1234和10 169.在窗体上画一个名称为Text1的文本框和一个名称为Commandl的命令按钮,然后编写如下事件过程: Private Sub Command1_Click() Dim i As Integer,n As Integer For i=0 To 50 i=i+3 n=n+1 If i>10 Then Exit For Next Text1.Text=Str(n) End Sub 程序运行后,单击命令按钮,在文本框中显示的值是____B____。 A.2 B.3 C.4 D.5 170.窗体上有一个名称为CD1的通用对话框控件和由四个命令按钮组成的控件数组Command1,其下标从左到右分别为0、1、2、3,窗体外观如下图所示。命令按钮的事件过程如下: .. Private Sub Command1_Click(Index As Integer) Select Case Index Case 0 CD1.Action=1 Case 1 CD1.ShowSave Case 2 CD1.Action=5 Case 3 End End Select End Sub 对上述程序,下列叙述中错误的是___C_____。 A.单击“打开”按钮,显示打开文件的对话框 B.单击“保存”按钮,显示保存文件的对话框 C.单击“打印”按钮,能够设置打印选项,执行打印操作 D.单击“退出”按钮,结束程序的运行 171.以下关于函数过程的叙述中错误的是__B______。 A.函数过程一定有返回值 B.函数过程一定有参数 C.函数过程可以在窗体模块和标准模块中定义 D.函数过程参数的类型与返回值的类型无关 172.在窗体上画两个名称分别为Text1、Text2的文本框,Text1的Text属性为“DateBase”,如图所示。 现有如下事件过程: Private Sub Text1_Change() Text2.Text=Mid(Text1,1,5) End Sub 运行程序,在文本框Text1中原有字符之前输入a,Text2中显示的是_____C___。 A.DataA B.DataB C.aData D.aBase 173.下列描述中正确的是_____A___。 A.Visual Basic只能通过过程调用执行通用过程 B.可以在Sub过程的代码中包含另一个Sub过程的代码 C.可以像通用过程一样指定事件过程的名字 D.Sub过程和Function过程都有返回值 174.阅读程序: Private Sub Command1_Click() Dim arr Dim i As Integer arr=Array(0,1,2,3,4,5,6,7,8,9,10) .. For i=0 To 2 Print arr(7-i); Next End Sub 程序运行后,窗体上显示的是____B____。 A.8 7 6 B.7 6 5 C.6 5 4 D.5 4 3 175.在窗体上画一个命令按钮,其名称为Command1,然后编写如下事件过程: Private Sub Command1_Click() Dim a$,b$,c$,k% a=\"ABCD\" b=\"123456\" c=\"\" k=1 Do While k<=Len(a) Or k<=Len(b) If k<=Len(a) Then c=c & Mid(a,k,1) End If If k<=Len(b)Then c=c & Mid(b,k,1) End If k=k+1 Loop Print c End Sub 运行程序,单击命令按钮,输出结果是____D____。 A.123456ABCD B.ABCD123456 C.D6C5B4A321 D.A1B2C3D456 176.若在窗体模块的声明部分声明了如下自定义类型和数组 Private Type rec Code As Integer Caption As String End Type Dim arr(5) As rec 则下面的输出语句中正确的是____C____。 A.Print arr.Code(2),arr.Caption(2) B.Print arr.Code,arr.Caption C.Print arr(2).Code,arr(2).Caption D.Print Code(2),Caption(2) 177.标准模块中有如下程序代码: Public x As Integer,y As Integer Sub var_pub() x=10 :y=20 End Sub 在窗体上有1个命令按钮,并有如下事件过程: .. Private Sub Command1_Click() Dim x As Integer Call var_pub x=x+100 y=y+100 Print x;y End Sub 运行程序后单击命令按钮,窗体上显示的是___B_____。 A.100 100 B.100 120 C.110 100 D.110 120 178.在窗体上画一个命令按钮(名称为Command1),并编写如下代码: Function Fun1(ByVal a As Integer,b As Integer)As Integer Dim t As Integer t=a-b b=t+a Fun1=t+b End Function Private Sub Command1_C1ick() Dim x As Integer x=10 Print Fun1(Fun1(x,(Fun1(x,x-1))),x-1) End Sub 程序运行后,单击命令按钮,输出结果是___B_____。 A.10 B.0 C.11 D.21 179.假定有以下循环结构: Do Until 条件表达式 循环体 Loop 则下列正确的描述是_____D___。 A.如果\"条件表达式\"的值是0,则一次循环体也不执行 B.如果\"条件表达式\"的值不为0,则至少执行一次循环体 C.不论\"条件表达式\"的值是否为\"真\",至少要执行一次循环体 D.如果\"条件表达式\"的值恒为0,则无限次执行循环体 180.窗体上有两个水平滚动条HV、HT(Max属性值均小于100),还有一个文本框Text1和一个标题为“计算”的命令按钮Command1,并编写了以下程序: Private Sub Command1_Click() Call calc(HV.Value,HT.Value) End Sub Public Sub calc(x As Integer,y As Integer) Text1.Text=x*y End Sub .. 运行程序,单击“计算”按钮,可根据速度与时间计算出距离,并显示计算结果。 对以上程序,下列叙述中正确的是___C_____。 A.过程调用语句不对,应为calc(HV,HT) B.过程定义语句的形式参数不对,应为Sub calc(x As Control,y As Contro1) C.计算结果在文本框中显示出来 D.程序不能正确运行 181.在窗体上画一个名称为Command1的命令按钮,然后编写如下程序: Public Enum s a=4 b=3 End Enum Private Sub Command1_Click() Dim x As Integer x=a If x>=3 Then MsgBox \"Pass!\" End Sub 运行程序,其结果是_____D_____。 A.运行错误,因为Enum定义有错 B.运行错误,因为x=a类型不匹配 C.运行正常结束,不显示任何信息 D.运行正常,显示内容为“Pass!”的信息框 182.有如下程序: Option Base 1 Private Sub Command1_Click() Dim arr(10) arr=Array(10,35,28,90,54,68,72,90) For Each a In arr If a>50 Then Sum=Sum+a End If Next a End Sub 运行上述程序时出现错误,错误之处是__A______。 A.数组定义语句不对,应改为Dim arr B.没有指明For循环的终值 C.应在For语句之前增加Sum=0 D.Next a应改为Next 183.阅读程序: Function fac(ByVal n As Integer)As Integer Dim temp As Integer .. temp=1 For i%=1 To n temp=temp*i% Next i% fac=temp End Function Private Sub Form_Click() Dim nsum As Integer nsum=1 For i%=2 To 4 nsum=nsum+fac(i%) Next i% Print nsum End Sub 程序运行后,单击窗体,输出结果是___C_____。 A.35 B.31 C.33 D.37 184.在窗体上画一个名为Command1的命令按钮,然后编写以下程序: Private Sub Command1_Click() Dim a(10)As Integer For k=10 To 1 Step -1 a(k)=20-2*k Next k k=k+7 Print a(k-a(k)) End Sub 运行程序,单击命令按钮,输出结果是___A_______。 A.18 B.12 C.8 D.6 185.请阅读程序: Private Sub Form_Click() m=1 For i=4 To 1 Step-1 Print Str(m); m=m+1 For j=1 To i Print \"*\"; Next j Print Next i End Sub 程序运行后,单击窗体,则输出结果是_____A_____。 A.1**** B. 4**** 2*** 3*** 3** 2** 4* 1* .. C. **** D. * *** ** ** *** * **** 186.设窗体上有一个通用对话框控件CD1,希望在执行下面程序时,打开如图所示的文件对话框 Private Sub Command1_Click() CD1.DialogTitle=\"打开文件\" CD1.InitDir=\"C:\\\" CD1.Filter=\"所有文件|*.*|Word文档|*.doc|文本文件|*.txt\" CD1.FileName=\"\" CD1.Action=1 If CD1.FileName=\"\" Then Print\"未打开文件\" Else Print\"要打开文件\" & CD1.FileName End If End Sub 但实际显示的对话框中列出了C:\\下的所有文件和文件夹,“文件类型”一栏中显示的是“所有文件”。下面的修改方案中正确的是_____C___。 A.把CD1.Action=1改为CD1.Action=2 B.把“CD1.Filter=”后面字符串中的“所有文件”改为“文本文件” C.在语句CD1.Action=1的前面添加:CD1.FilterIndex=3 D.把CD1.FileName=\"\"改为CD1.FileName=\"文本文件\" 187.设a、b都是自然数,为求a除以b的余数,某人编写了以下函数: Function fun(a As Integer,b As Integer) While a>b a=a-b Wend fun=a End Function 在调试时发现函数是错误的。为使函数能产生正确的返回值,应做的修改是_____D___。 A.把a=a-b改为a=b-a B.把a=a-b改为a=a\\b C.把While a>b改为While aD.把While a>b改为While a>=b 188.以下关于过程及过程参数的描述中,错误的是___C_____。 .. A.过程的参数可以是控件名称 B.调用过程时使用的实参的个数应与过程形参的个数相同 C.只有函数过程能够将过程中处理的信息返回到调用程序中 D.窗体可以作为过程的参数 189.在窗体上画一个命令按钮,然后编写如下事件过程: Private Sub Command1_Click() Dim I,Num Randomize Do For I=1 To 1000 Num=Int(Rnd*100) Print Num; Select Case Num Case 12 Exit For Case 58 Exit Do Case 65,68,92 End End Select Next I Loop End Sub 上述事件过程执行后,下列描述中正确的是______D__。 A.Do循环执行的次数为1000次 B.在For循环中产生的随机数小于或等于100 C.当所产生的随机数为12时结束所有循环 D.当所产生的随机数为65、68或92时窗体关闭、程序结束 190.现有如下程序: Private Sub Command1_Click() For i=1 To 5 s=s+f(5+i) Next Print s End Sub Public Function f(x As Integer) If x>=10 Then t=x+1 Else t=x+2 End If f=t End Function 运行程序,则窗体上显示的是_____B___。 .. A.38 B.49 C.61 D.70 191.设有如下程序: Option Base 1 Private Sub Form_Click() Dim a(5) As String, i As Integer For i=1 To 5 a(i) = Chr(Asc(\"A\")+i) Call f(a,i) Next i End Sub Sub f(ta() As String, n As Integer) Dim i As Integer For i=1 To n Print ta(i); Next i Print End Sub 对上述程序,以下叙述中正确的是______C___。 A.程序有错,因为在过程f的定义中数组参数格式不正确 B.程序可正常运行,输出内容的第一行是一个字母“A” C.程序可正常运行.输出内容的第一行是一个字母“B” D.程序可正常运行,输出内容的第一行是数字65 192.要求产生10个随机整数,存放在数组arr中。从键盘输入要删除的数组元素的下标,将该元素中的数据删除,后面元素中的数据依次前移,并显示删除后剩余的数据。现有如下程序: Option Base 1 Private Sub Command1_Click() Dim arr(10)As Integer For i=1 To 10 '循环1 arr(i)=Int(Rnd*100) Print arr(i); Next x=InputBox(\"输入1-10的一个整数:\") For i=x+1 To 10 '循环2 arr(i-1)=arr(i) Next For i=1 To 10 '循环3 Print arr(i); Next End Sub 程序运行后发现显示的结果不正确。需修改的是____D____。 A.产生随机数时不使用Int函数 B.循环2的初值应为i=x C.数组定义改为Dim a(11)As Integer D.循环3的循环终值应改为9 .. 193.在窗体上画一个命令按钮和一个标签,其名称分别为Command1和Label1,然后编写如下代码: Sub S(x As Integer,y As Integer) Static z As Integer y=x*x+z z=y End Sub Private Sub Command1_Click() Dim i As Integer,z As Integer m=0 z=0 For i=1 To 3 S i,z m=m+z Next i Label1.Caption=Str(m) End Sub 程序运行后,单击命令按钮,在标签中显示的内容是____B____。 A.50 B.20 C.14 D.7 194.窗体上有一个名为Command1的命令按钮,并有如下程序: Private Sub Command1_Click() Dim a(10),x% For k=1 To 10 a(K)=Int(Rnd*90+10) x=x+a(k) Mod 2 Next k Print x End Sub 程序运行后,单击命令按钮,输出结果是_____A____。 A.10个数中奇数的个数 B.10个数中偶数的个数 C.10个数中奇数的累加和 D.10个数中偶数的累加和 195.在窗体上画一个命令按钮(其名称为Command1),然后编写如下代码: Private Sub Command1_Click() Dim a a=Array(1,2,3,4) i=3:j=1 Do While i>=0 s=s+a(i)*j i=i-1 j=j*10 Loop Print s End Sub 运行上面的程序,单击命令按钮,则输出结果是__D_____。 A.4321 B.123 C.234 D.1234 .. 196.下面程序运行时,若输入395,则输出结果是____B___。 Private Sub command1_Click() Dim x% x=InputBox(\"请输入一个3位整数\") Print x Mod 10;x\\100;(x Mod 100)\\10 End Sub A.3 9 5 B.5 3 9 C.5 9 3 D.3 5 9 197.下列关于通用对话框CommonDialog1的叙述中,错误的是___A____。 A.只要在\"打开\"对话框中选择了文件,并单击\"打开\"按钮,就可以将选中的文件打开 B.使用CommonDialog1.ShowColor方法,可以显示\"颜色\"对话框 C.CancelError属性用于控制用户单击\"取消\"按钮关闭对话框时,是否显示出错警告 D.在显示\"字体\"对话框前,必须先设置CommonDialog1的Flags属性,否则会出错 198.设有如下通用过程: Public Function Fun(xStr As String)As String Dim tStr As String,strL As Integer tStr=\"\" strL=Len(xStr) i=strL/2 Do While i<=strL tStr=tStr & Mid(xStr,i+1,1) i=i+1 Loop Fun=tStr & tStr End Function 在窗体上画一个名称为Textl的文本框和一个名称为Commandl的命令按钮。然后编写如下的事件过程: Private Sub Command1_Click() Dim S1 As String S1=\"ABCDEF\" Text1.Text=LCase(Fun(S1)) End Sub 程序运行后,单击命令按钮,文本框中显示的是___C____。 A.ABCDEF B.abcdef C.defdef D.defabc 199.在窗体上画一个名为Command1的命令按钮,然后编写如下代码: Option Base 1 Private Sub Command1_Click() Dim a a=Array(1,2,3,4) j=1 For i=3 To 1 Step -1 s=s+a(i)*j j=j*10 Next i Print s .. End Sub 运行上面的程序,其输出结果是___A____。 A.123 B.12 C.34 D.4321 200.窗体上有一个用菜单编辑器设计的菜单。运行程序,并在窗体上单击鼠标右键,则弹出一个快捷菜单,如图所示。以下叙述中错误的是_____A__。 A.在设计“粘贴”菜单项时,在菜单编辑器窗口中设置了“有效”属性(有“√”) B.菜单中的横线是在该菜单项的标题输入框中输入了一个“-”(减号)字符 C.在设计“选中”菜单项时,在菜单编辑器窗口中设置了“复选”属性(有“√”) D.在设计该弹出菜单的主菜单项时,在菜单编辑器窗口中去掉了“可见”前面的“√” 201.窗体上有一个名称为Picture1的图片框控件,一个名称为Timer1的计时器控件,其Interval属性值为1000。要求每隔5秒钟图片框右移100。现编写程序如下: Private Sub Timer1_Timer() Static n As Integer n=n+1 If (n/5)=Int(n/5) And Picture1.Left A.程序中没有设置5秒钟的时间,所以不能每隔5秒移动图片框一次 B.此程序运行时图片框位置保持不动 C.此程序运行时图片框移动方向与题目要求相反 D.If语句条件中的“Picture1.Left A.Dir1.Path=Drive1.Path B.File1.Path=Dir1.Path C.File1.Path=Drive1.Path D.Drive1.Drive=Dir1.Path 203.以下说法中正确的是____C____。 A.MouseUp事件是鼠标向上移动时触发的事件 B.MouseUp事件过程中的x,y参数用于修改鼠标位置 C.在MouseUp事件过程中可以判断用户是否使用了组合键 D.在MouseUp事件过程中不能判断鼠标的位置 204.窗体上有一个名为Command1的命令按钮和一个名为Timer1的计时器,并有下面事件过程: Private Sub Command1_Click() Timer1.Enabled=True End Sub Private Sub Form_Load() Timer1.Interval=10 .. Timer1.Enabled=False End Sub Private Sub Timer1_Timer() Command1.Left=Command1.Left+10 End Sub 程序运行时,单击命令按钮,则产生的结果是___D_____。 A.命令按钮每10秒向左移动一次 B.命令按钮每10秒向右移动一次 C.命令按钮每10毫秒向左移动一次 D.命令按钮每10毫秒向右移动一次 205.下列可以打开随机文件的语句是_____D___。 A.Open\"file1.dat\" For Input As #1 B.Open\"file1.dat\" For Append As #1 C.Open\"file1.dat\" For Output As #1 D.Open\"file1.dat\" For Random As #1 Len=20 206.窗体上有List1、List2两个列表框,List1中有若干列表项(见图),并有下面的程序: Private sub Command1_Click() For k=List1.ListCount-1 To 0 step-1 If List1.Selected(k)Then List2.AddItem List1.List(k) List1.RemoveItem k End If Next k End Sub 程序运行时,按照图示在List1中选中2个列表项,然后单击Command1命令按钮,则产生的结果是_____C___。 A.在List2中插入了\"外语\"、\"物理\"两项 B.在List1中删除了\"外语\"、\"物理\"两项 C.同时产生A和B的结果 D.把List1中最后1个列表项删除并插入到List2中 207.在利用菜单编辑器设计菜单时,为了把组合键\"Alt+X\"设置为\"退出(X)\"菜单项的访问键,可以将该菜单项的标题设置为____B____。 A.退出(X&) B.退出(&X) C.退出(X#) D.退出(#X) 208.在窗体上画一个命令按钮和一个文本框(名称分别为Commandl和Textl),并把窗体的KeyPreview属性设置为True,然后编写如下代码: Dim SaveAll As String Private Sub Form_Load() Show Textl.Text=\"\" Text1.SetFocus End Sub Private Sub Command1_Click() Textl.Text=LCase(SaveAll)+SaveAll End Sub .. Private Sub Form_KeyPress(KeyAscii As Integer) SaveAll=SaveAll+Chr(KeyAscii) End Sub 程序运行后,直接用键盘输入:VB,再单击命令按钮,则文本框中显示的内容为____A____。 A.vbVB B.不显示任何信息 C.VB D.出错 209.设有如下通用过程: Public Function Fun(xStr As String)As String Dim tStr As String,strL As Integer tStr=\"\" strL=Len(xStr) i=1 Do While i<=strL/2 tStr=tStr & Mid(xStr,i,1) & Mid(xStr,strL-i+1,1) i=i+1 Loop Fun=tStr End Function 在窗体上画一个名称为Command1的命令按钮。然后编写如下的事件过程: Private Sub Command1_Click( ) Dim S1 As String S1=\"abcdef\" Print UCase(Fun(S1)) End Sub 程序运行后,单击命令按钮,输出结果是___C_____。 A.ABCDEF B.abcdef C.AFBECD D.DEFABC 210.窗体上有一个名称为Picture1的图片框控件,一个名称为Label1的标签控件。如图所示。 现有如下程序: Public Sub display(x As Control) If TypeOf x Is Label Then x.Caption=\"计算机等级考试\" Else x.Picture=LoadPicture(\"pic.jpg\") End If End Sub Private Sub Label1_Click() Call display(Label1) End Sub Private Sub Picture1_Click() Call display(Picture1) End Sub 对以上程序,下列叙述中错误的是_____A___。 A.程序运行时会出错 .. B.单击图片框,在图片框中显示一幅图片 C.过程中的x是控件变量 D.单击标签,在标签中显示一串文字 211.窗体上有一个名称为Command1的命令按钮,其事件过程如下: Private Sub Command1_Click() Dim i As Integer, j As Integer, k As Integer Dim s As Double s=0:i=1:j=0:k=-1 Do While i<6 s=s+k*(j/i) i=i+1 j=j+1 k=-k Loop Print s End Sub 以上程序所计算的表达式是___A_____。 A.1/2-2/3+3/4-4/5 B.-1/2+2/3-3/4+4/5 C.1-1/2+2/3-3/4+4/5 D.-1+1/2-2/3+3/4-4/5 212.以下关于弹出式菜单的叙述中,错误的是___A_____。 A.一个窗体只能有一个弹出式菜单 B.弹出式菜单在菜单编辑器中建立 C.弹出式菜单的菜单名(主菜单项)的“可见”属性通常设置为False D.弹出式菜单通过窗体的PopupMenu方法显示 213.假定已经在菜单编辑器中建立了窗体的弹出式菜单,其顶级菜单项的名称为a1,其“可见”属性为False。程序运行后,单击鼠标左键或右键都能弹出菜单的事件过程是____B____。 A.Private Sub Form_MouseDown(Button As Integer,_ Shift As Integer,X As Single,Y As Single) If Button=1 And Button=2 Then PopupMenu a1 End If End Sub B.Private Sub Form_MouseDown(Button As Integer,_ Shift As Integer,X As Single,Y As Single) PopupMenu a1 End Sub C.Private Sub Form_MousoDown(Button As Integer,_ Shift As Integer,X As Single,Y As Single) If Button=1 Then PopupMenu a1 End If End Sub D.Private Sub Form_MouseDown(Button As Integer,_ Shift As Integer,X As Single,Y As Single) If Button=2 Then .. PopupMenu a1 End If End Sub 214.设窗体上有一个名为List1的列表框,并编写下面的事件过程: Private Sub List1_Click() Dim ch As String ch=List1.List(List1.ListIndex) List1.RemoveItem List1.ListIndex List1.AddItem ch End Sub 程序运行时,单击一个列表项,则产生的结果是____C____。 A.该列表项被移到列表的最前面 B.该列表项被删除 C.该列表项被移到列表的最后面 D.该列表项被删除后又在原位置插入 215.有弹出式菜单的结构如下表,程序运行时,单击窗体则弹出如下图所示的菜单。下面的事件过程中能正确实现这一功能的是____C____。 内缩 无 … … 标题 编辑 复制 粘贴 名称 edit cut paste A.Private Sub Form_Click() PopupMenu cut End Sub B.Private Sub Command1_Click() PopupMenu edit End Sub C.Private Sub Form_Click() PopupMenu edit End Sub D.Private Sub Form_Click() PopupMenu cut PopupMenu paste End Sub 216.设工程中有2个窗体:Form1、Form2,Form1为启动窗体。Form2中有菜单,其结构如表。要求在程序运行时,在Form1的文本框Text1中输入口令并按回车键(回车键的ASCII码为13)后,隐藏Form1,显示Form2。若口令为“Teacher”,所有菜单项都可见;否则看不到“成绩录入”菜单项。为此,某人在Form1窗体文件中编写如下程序: Private Sub Textl_KeyPress(KeyAscii As Integer) If KeyAscii=13 Then If Text1.Text=\"Teacher\" Then Form2.input.Visible=True Else .. Form2.input.Visible=False End If End If Form1.Hide Form2.Show End Sub 程序运行时发现刚输入口令时就隐藏了Form1,显示了Form2,程序需要修改。下面修改方案中正确的是____B____。 A.把Form1中Text1文本框及相关程序放到Form2窗体中 B.把Form1.Hide、Form2.Show两行移到2个End If之间 C.把If KeyAscii=13 Then改为If Key Ascii=\"Teacher\"Then D.把2个Form2.input.Visible中的\"Form2.\"删去 217.在窗体上画1个命令按钮和1个文本框,其名称分别为Command1和Text1,再编写如下程序: Dim ss As String Private Sub Text1_KeyPress(KeyAscii As Integer) If Chr(KeyAscii)<>\"\" Then ss=ss+Chr(KeyAscii) End Sub Private Sub Command1_Click() Dim m As String,i As Integer For i=Len(ss)To 1 Step-1 m=m+Mid(ss,i,1) Next Text1.Text=UCase(m) End Sub 运行程序后,在文本框中输入\"Number 100\",并单击命令按钮,则文本框中显示的是____D____。 A.NUMBER 100 B.REBMUN C.REBMUN l00 D.001 REBMUN 218.设有以下程序: Private Sub Form_Click() x=50 For i=1 To 4 y=InputBox(\"请输入一个整数\") y=Val(y) If y Mod 5=0 Then a=a+y x=y ElSe a=a+x End If Next i Print a End Sub 程序运行后,单击窗体,在输入对话框中依次输入15、24、35、46,输出结果为___A_____。 A.100 B.50 C.120 D.70 .. 219.某人为计算n!(0 Dim p As Long p=1 For k=n-1 To 2 Step -1 p=p*k Next k fun=p End Function 在调试时发现该函数过程产生的结果是错误的,程序需要修改。下面的修改方案中有3种是正确的,错误的方案是____B____。 A.把p=1改为p=n B.把For k=n-1 To 2 Step-1改为For k=1 To n-1 C.把For k=n-1 To 2 Step-1改为For k=1 To n D.把For k=n-1 To 2 Step-1改为For k=2 To n 220.窗体上有两个名称分别为Text1、Text2的文本框。Text1的KeyUp事件过程如下: Private sub Text1_KeyUp(Keycode As Integer,Shift As Integer) Dim c As String c=UCase(Chr(Keycode)) Text2.Text=Chr(Asc(c)+2) End sub 当向文本框Text1中输入小写字母a时,文本框Text2中显示的是____C____。 A.A B.a C.C D.c 221.窗体上有一个名称为Command1的命令按钮,其单击事件过程如下: Private Sub Command1_Click() Dim a,b(2,3) As Integer a=Array(3,7,5,11,31,43,17,62,9,23,37,41) i=0 Do While i<=UBound(a) For j=0 To 2 For k=0 To 3 b(j,k)=a(i) i=i+1 Next Next Loop Print b(2,2) End Sub 运行程序,窗体上显示的是___C_____。 A.43 B.17 C.37 D.23 222.有如下程序: Private Type stu X As String Y As Integer .. End Type Private Sub Command1_Click() Dim a As stu a.X=\"ABCD\" a.Y=12345 Print a End Sub 程序运行时出现错误。错误的原因是_____D___。 A.Type定义语句没有放在标准模块中 B.变量声明语句有错 C.赋值语句不对 D.输出语句Print不对 223.在窗体上画一个名称为CD1的通用对话框,并有如下程序: Private Sub Form_Load() CD1.DefaultExt=\"doc\" CD1.FileName=\"c:\\filel.txt\" CD1.Filter=\"应用程序(*.exe)|*.exe\" End Sub 程序运行时,如果显示了“打开”对话框,在“文件类型”下拉列表中的默认文件类型是______A__。 A.应用程序(*.exe) B.*.doc C.*.txt D.不确定 224.窗体上有一个名为Command1的命令按钮,并有如下程序: Private Sub Command1_Click() Dim a As Integer,b As Integer a=8 b=12 Print Fun(a,b);a;b End Sub Private Function Fun(ByVal a As Integer,b As Integer)As Integer a=a Mod 5 b=b\\5 Fun=a End Function 程序运行时,单击命令按钮,则输出结果是___B_____。 A.3 3 2 B.3 8 2 C.8 8 12 D.3 8 12 225.请阅读程序: Option Base 1 Private Sub Form_Click() Dim Arr(4,4) As Integer For i=1 To 4 For j=1 To 4 Arr(i,j)=(i-1)*2+j Next j .. Next i For i=3 To 4 For j=3 To 4 Print Arr(j,i); Next j Print Next i End Sub 程序运行后,单击窗体,则输出结果是_____C___。 A.5 7 B.6 8 6 8 7 9 C.7 9 D.8 10 8 10 8 11 226.某人编写了下面的程序,希望能把Text1文本框中的内容写到out.txt文件中 Private Sub Commandl_Click() Open \"out.txt\" For Output As #2 Print \"Text1\" Close#2 End sub 调试时发现没有达到目的,为实现上述目的,应做的修改是__A______。 A.把Print \"Text1\"改为Print#2,Text1 B.把Print \"Text1\"改为Print Text1 C.把Print \"Text1\"改为Write\"Text1\" D.把所有#2改为#1 227.窗体的左右两端各有1条直线,名称分别为Line1、Line2;名称为Shape1的圆靠在左边的Line1直线上(见图);另有1个名称为Timer1的计时器控件,其Enabled属性值是True。要求程序运行后,圆每秒向右移动100,当圆遇到Line2时则停止移动。 为实现上述功能,某人把计时器的Interval属性设置为1000,并编写了如下程序: Private Sub Timer1_Timer() For k=Line1.X1 To Line2.X1 Step 100