VB 期末考试题
一. 单选题:(每题1分,共30分,答案写在答题卡上) 1. 结构化程序设计的三种基本结构是:
(A)顺序、选择、循环 (B) 顺序、选择、层次 (C)顺序、跳转、循环 (D) 顺序、选择、模块
2. 要在Visual Basic 的帮助菜单中获得联机帮助,必须在安装好Visual Basic软件后,再安装:
(A) MSDN Library (B) Microsoft Office (C) Visual Foxpro (D) Visual C++
3. 当一个工程含有多个窗体时,其中的启动窗体是__________。 (A) 启动VB时建立的窗体
(B) 在“工程/工程1属性”对话框中指定的窗体 (C) 第一个添加的窗体 (D) 最后一个添加的窗体 4 用VB创建了一个新的工程,设计完成后,将该工程的所有文件保存在一个指定的空文件夹下,则该文件夹至少包含有哪两种类型的文件:
(A)工程文件(.vbp)、窗体文件(.frm) (B) 工程文件(.vbp)、标准文件(.bas) (C)窗体文件(.frm) 、标准文件(.bas) (D) 工程文件(.vbp)、类文件(.cls)
5 有一个变量名为AAA,其取值范围为[0,40000]之间的整数,则定义该变量最合适的语句是: (A) DIM AAA AS INTEGER (B) DIM AAA AS LONG (C) DIM AAA AS SINGLE (D) DIM AAA AS DOUBLE 6 以下可以作为Visual Basic 变量名的是: (A) TTT2 (B) ELSE (C) SIN (D) X(-2)
7. 在代码窗口输入某行代码并按回车键后,如代码变成红色,表示出现__________。 (A) 运行错误 (B) 语法错误 (C) 逻辑错误 (D) 语法错误和逻辑错误 8. 产生闭区间[60,100]之间的随机整数,正确的表达式是: (A) Int(41*Rnd())+60 (B) Int(40*Rnd(1))+60 (C) Int(42*Rnd())+61 (D) Int(41*Rnd(1))+60 9. 表示条件“x是小于y的偶数”的逻辑表达式是__________。 (A) x
10. 要强制声明变量,可在窗体模块或标准模块的声明段中加入语句_______。 (A) Option Base 1 (B) Option Compare (C) Option Base 0 (D) Option Explicit 11. 函数Len(“深圳大学ABCD”)的值是___________。 (A) 6 (B) 8 (C) 12 (D) 16 12. 设A=“我的家乡在哪里?”,则以下函数返回值为“家乡”的是________。
(A) left(A,2,2) (B) mid(A,3,2) (C) right(A,2,4) (D) mid(A,5,4) 13. 下列操作中, __________ 不能将焦点赋给对象. (A) 运行时使用Tab键 (B) 用鼠标单击选择对象
(C) 把对象的Enabled属性设置为True
(D) 在程序代码中调用对象的SetFocus方法
14 若要求从文本框中输入密码时在文本框中只显示“#”号,应当将该文本框的哪种属性设置“#”。
(A) Text属性值为“#” (B) Password属性值为“#” (C) Passwordchar属性值为“#” (D) Caption 属性值为“#”
15. 如果将文本框的________属性设置为True,则运行时不能对文本框中的内容进行编辑。 (A)Visible (B)Locked (C)MultiLine (D)Position 16.语句s=s+1的正确含义是____________。
(A)变量s的值与s+1的值相等 (B)将变量s的值加1后赋给变量s (C)将变量s的值存到s+1中去 (D)变量s的值为1 17 要清除组合框Combo1中的所有内容,可以使用_______语句 (A) Combo1.Cls (B) Combo1.Clear (C) Combo1.Delete (D) Combo1.Remove 18 引用列表框List1的最后一项应使用: (A) List1.List(List1.ListCount-1) (B) List1.List(List1.ListCount) (C) List1.List(ListCount) (D) List1.List(ListCount-1) 19 以下关于复选框的说法,正确的是:
A、复选框的Enabled属性用于决定该复选框是否被选中 B、复选框的Value 属性用于决定该复选框是否被选中 C、复选框的Checked属性用于决定该复选框是否被选中 D、复选框的Visible 属性用于决定该复选框是否被选中
20 在Visual Basic 中坐标轴的缺省刻度单位是缇,用户可以根据实际需要使用下面哪种属性来改变刻度单位。 (A) Scale (B) DrawWidth (C) ScaleMode (D) DrawStyle 21 多分支选择结构Case语句,下列写法错误的是__________。 (A) Case x > 0 (B) Case 0 , 6 To 100 (C) Case Is <100 (D) Case 2,4,5
22. 为了将任意大小的图片放在一个固定大小的Image控件中,应该将该控件的哪个属性设置为True.
(A) Autosize (B) Stretch (C) Picture (D) Enabled
23 定时器的Interval属性以_______ 为单位指定Timer事件之间的时间间隔。 (A) 分 (B) 秒 (C) 毫秒 (D) 微妙
24. 对滚动条控件,当滚动块移动后或在代码中对Value属性进行赋值后,会触发下列哪种事件:
(A) Change (B) Click (C) KeyPress (D) KeyDown
25. 下列可以把当前目录下的图形文件AAA.jpg装入图片框P1中的语句为__________。 (A) P1. Picture = LoadPicture(“\\ AAA.jpg”) (B) P1. Picture = AAA.jpg
(C) P1.Picture=LoadPicture(“AAA.jpg”) (D) P1.Picture=LoadPicture( AAA.jpg )
26. 在组合框Combl中选定某一表项后, 单击命令按钮Command1即可删除该表项, Command1的单击事件过程是:
Private Sub Command1_Click()
If Combl.ListIndex <> -1 Then Combl.Remove __________ End If End Sub
(A) Combl.ListCount (B) Combl.ListIndex (C) Combl.Text (D) Combl.MultiSelect 27. 关于ReDim语句正确的说法是_______。 (A) Redim 不能出现过程中
(B) Redim 可以出现过程中,也可以出现在通用声明段 (C) Redim只能出现在通用声明段 (D) Redim 只能出现过程中
28.Sub过程与Function过程最根本的区别是__________。
(A)Sub过程的过程名不能返回值,而Function过程能通过过程名返回值 (B)Sub过程可以有参数,Function过程不可以 (C)两种过程参数的传递方式不同
(D)Sub过程可以使用Call语句或直接使用过程名调用,而Function过程不可以 29. 设有数组声明语句:
Option Base 0
Dim A(5, 3 To 8) As Integer 则数组A共有______个元素; (A) 36 (B) 30 (C) 25 (D) 40
30.假定有一个菜单项,名为Menuitem,为了在运行时使该菜单项失效, 以下正确的语句是_________。 (A) Menuitem. Visible=True (B) Menuitem.Enabled=True (C) Menuitem. Enabled=False (D) Menuitem. Visible= False
二. 判断题:(每题1分,共10分。答案写在答题卡上)
1. 如果一个变量未经定义而直接使用,则该变量为可变类型变量。( )
2.使用setfocus方法可以使对象获得焦点,对于一个对象, 只有其visible属性和enable属性都为true,才能接受焦点。 ( )
3.将一条语句分成多行显示用 “ :” 分隔;将多条语句写在一行,语句间用 “;”分隔。 ( )
4. For…Next循环结构中,循环变量的初值必须小于终值。 ( )
5. 运行时单击复选框或在代码中改变复选框的Value值时,会产生该复选框的Click事件。 ( ) 6.注释语句是非执行语句,它可以放在代码中的任何位置。 ( ) 7. 在Windows的资源管理器中双击工程的.frm文件,可以正确打开工程。 ( ) 8. 数组在使用前必须先声明。 ( ) 9. 当数组下标越界时,系统不会提示出错信息。 ( ) 10. 全局变量指在模块的通用声明段中用Public语句声明的变量,其作用范围为应用程序的所有过程。 ( ) 三 程序填空(共20分,每题2分。题答在答题卡上) 1 下列程序段的执行结果为: A=2: B=6
IF NOT A>3 THEN A=B-2 ELSE B=A+3 Print A; B
2 下列程序段的执行结果为: A=”10” B=”22”
A=Val(A)+Val(B) B=Val(“33”)
IF A<>B THEN PRINT A-B ELSE A+B
3 下列程序段的执行结果为: X=80
IF X>60 THEN Y=”D” IF X>70 THEN Y=”C” IF X>80 THEN Y=”B” IF X>90 THEN Y=”A” PRINT “Y=”;Y
4 下列程序段的执行结果为: X=5
FOR K=2 TO 10 STEP –2 X=X+K NEXT K PRINT K;X
5 下列程序段的执行结果为: A=0 : B=1 DO
A=A+B
B=B+1
LOOP WHILE A<10 PRINT A;B
6 下列程序段的执行结果为: DIM A(6) FOR I=1 TO 6 A(I)=I*I NEXT I
PRINT A(I-2)
7 下列程序段的执行结果为: DIM A(10,10) FOR I=1 TO 5 FOR J=2 TO 6 A(I,J)=I*J NEXT J NEXT I
PRINT A(2,6)+A(5,3)
8 单击窗体时,下列程序代码的执行结果为: Private Sub Form_Click()
Dim x as Integer, y as Integer, z as Integer x=5: y=8: z=12 Call Proc1(x,y,z) Print x,y,z End Sub
Private Sub Proc1(x as Integer, y as integer, Byval z as integer) X=x+1 Y=y+1 Z=z+1 End Sub
9 打开C盘当前文件夹下名为Mydata.Dat的顺序文件,在该文件的尾部添加一行文本”欢迎你使用本程序”,然后关闭该顺序文件,请补充所缺的程序语句. 1 2 3 Close #2
10 下面程序段的功能是: Form1.FillColor=Vbgreen Form1.FillStyle=0
Line(100,100)-(600,600), VbRed, B
四 程序设计(共40分,每题10分,答案写在试卷上) 1 编写程序,实现如下图所示的用户界面要求。
1)单击命令按钮(Command1)生成15个60∽99的随机整数,存于整型数组中,同时显示在文本框(Text1)中。
2)双击窗体,将这15个随机整数以相反的次序显示于另一个文本框(Text2)中。