admin 管理员组

文章数量: 1086019


2024年4月18日发(作者:clear decals)

《程序设计基础VB》期中考试卷

一、选择题〖每小题1分,共计40分〗;

1. 以下变量名中合法的是 【1】 。

A. x2-1 B. print C. str_n D. 2x

分析:书P105,标识符命名规则

答案:C

2. 在Visual Basic中,所有的窗体和控件都必定具有的一个属性是 【2】 。

A.Name B.Font C)Caption D)FillColor

分析:名称属性是每个对象必须具备的,VB为每一个对象设置了一个默认的名称,用户可

以不更改,对象的默认名称是由对象的类名+序号构成的。

答案:A

3. 以下所列的7个控件中,具有Caption属性的有 【3】 个。

CheckBox(复选框)、ComboBox(组合框)、HscrollBar(水平滚动条)、Image(图像框)、

Frame(框架)、Label(标签)、Line(线条)

A.5 B.4 C.3 D.2

分析:常用控件中,TextBox、PictureBox、Image、ListBox、ComboBox、Timer、Line、

Shape、HScrollBar、VScrollBar没有Caption属性;

Label、CommandButton、OptionButton、CheckBox、Frame具有Caption属性;

另外,窗体也有Caption属性。

答案:C

4. 用来设置文字字体是否斜体的属性是 【4】 。

A.FontUnderline B.FontBold C.FontSlope D.FontItalic

分析:也可以写成

答案:D

5. 若需要在同一窗口内安排两组相互独立的单选按钮( OptionButton ),可使用 【5】

控件将它们分隔开。

① TextBox ② Picture ③ Image ④ Frame

A. ①② B. ②③ C. ②④ D. ③④

分析:将单选按钮分组的方法是放置在不同的容器中,VB中可以做容器的控件有:

PictureBox、Frame

答案:C

6. Timer控件的 【6】 属性决定该控件是否对时间的推移做出响应。将该属性设置为

False会关闭Timer控件,设置为True则打开它。

A.Enabled B.Visible C.Time D.Capable

分析:除了Enabled属性外,还可以通过设置Timer控件的Interval属性来控制Timer控件是

否开始响应。Interval属性值为0时不响应,非0时响应。

答案:A

7. 使用 【7】 方法可将新的列表项添加到一个列表框中。

A.Print B.AddItem C.Clear D.RemoveItem

分析:常用的列表框方法有:AddItem(添加)、RemoveItem(删除)、Clear(全部清除),

还要注意每个方法的调用格式。只有窗体、PictureBox和Debug对象才有Print方法。

答案:B

8. 要想在一个文本框中显示多行内容,应对下列哪一个属性进行设置 【8】 。

A.Text B.Font C.Multiline D.Alignment

分析:文本框中换行要使用换行字符vbCrLf或Chr(10) & Chr(13)。Alignment是对齐属性。

答案:C

9. 通过文本框的 【9】 事件过程可以获取文本框中键入字符的ASCII码值。

A.Change B.GotFocus C.LostFocus D.KeyPress

分析:KeyPress事件有一个KeyAscii参数,是系统传递过来的按下键的ASCII码值。

答案:D

10. 若看到程序中有以下事件过程,则可以肯定的是,当程序运行时 【10】 。

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”的控件时,执行此过程。

分析:控件的事件过程名组成:控件名+下划线+过程名,MouseDown是鼠标事件,记住各个

参数的含义。

答案:D

11. DrawStyle属性用于设置图形方法输出的线型,它受 【11】 属性的限制。

A.FillStyle B.FillColor C.BorderStyle D.DrawWidth

答案:D

12. 窗体上放置了三个文本框,若在Text1中输入456,在Text2中输入78,在程序中执行了

语句Text3=Text1+Text2后,则在Text3中显示 【12】 。

A.434 B.45678 C.溢出 D.语法错误

分析:当“+”的左右两边操作数都是字符串型数据时,“+”是字符串连接符;

当“+”的左右两边操作数都是数值型数据时,“+”是算术运算符;

当“+”的左右两边操作数不能转换成统一的数值型数据或字符串型数据时,出错。

答案:B

13. 设a=4,b=3,c=2,d=1,下列表达式的值是 【13】 。

a>b+1 Or c

A.True B.1 C.-1 D.0

分析:运算符的优先级:算术运算符>关系运算符>逻辑运算符;逻辑运算符的优先级:

Not>And>Or,本题结果也可以为False。

答案:D

14. 可以产生30~50(含30和50)之间的随机整数的表达式是 【14】 。

A.Int(Rnd*21+30) B.Int(Rnd*20+30)

C.Int(Rnd*50-Rnd*30) D.Int(Rnd*30+50)

分析:随机数产生公式

答案:A

15. 设控件使用默认名称,以下使用方法的语句中,正确的是 【15】 。

A. B. C. D.

分析:窗体、PictureBox、Debug对象的清除方法是Cls,列表框、组合框的清除方法是Clear。

答案:A

16. 运行时,要在图片框P1中打印字符串”How Are You”,应使用语句 【16】 。

A.=”How Are You” B.e=LoadPicture(”How Are You”)

C. ”How Are You” D.Print ”How Are You”

分析:设置图片框中图片用LoadPicture函数给图片框的Picture属性赋值,在图片框中输

出文字或画线(圆)用Print方法。

答案:C

17. 设窗体上有1个水平滚动条,已经通过属性窗口把它的Max属性设置为1,Min属性设置为

100。下面叙述中正确的是 【17】 。

A.程序运行时,若使滚动块向左移动,滚动条的Value属性值就增加

B.程序运行时,若使滚动块向左移动,滚动条的Value属性值就减少

C.由于滚动条的Max属性值小于Min属性值,程序会出错

D.由于滚动条的Max属性值小于Min属性值,程序运行时滚动条的长度会缩为一点,滚动

块无法移动

分析:Min~Max是一个数值范围,没有规定Min必须小于Max;若Min>Max时,滑块向右滑动

时Value属性值减小。

答案:A

18. 在窗体上画一个名称为Text1的文本框,然后画一个名称为H1的滚动条,其Min和Max属

性分别为0和100。程序运行后,如果移动滚动框,则在文本框中显示滚动条的当前值,

如图所示:

以下能实现上述操作的程序段是 【18】 。

A. Private Sub H1_Change() B.Private Sub H1_Click()

= =

End Sub End Sub

C. Private Sub H1_Change() D.Private Sub H1_Click()

= n =n

End Sub End Sub

分析:从文字“如果移动滚动框”可以确定应该选择H1的Change事件,“滚动条的当前值”

表示为:

答案:A

19. 设A="12345678",则表达式Val(Left(A,4)+Mid(A,4,2))的值为 【19】 。

A.123456 B.123445 C.8 D.6

20. 可以把变化长字符串S中的第一个"ABC"子串,替换成“1234"的语句是 【20】 。

A. S=Left(s, InStr(S,"ABC"))&"1234" & Right(S,Len(S)-InStr(S,"ABC")-2)

B. Mid(S,InStr(S,"ABC"),3)="1234"

C. Mid(S,InStr(S,"ABC"),4)="1234"

D. S=Left(s, InStr(S,"ABC")-1)&"1234"& Right(S,Len(S)-InStr(S,"ABC")-2)

分析:若S=“ERABCTYABCUIABC”,那么:

A项的结果S为“ERA1234TYABCUIABC”

B项的结果S为“ER123TYABCUIABC”

C项的结果S为“ER1234YABCUIABC”

D项的结果S为“ER1234TYABCUIABC”

答案:D

21. 在 Select Case X 结构中,描述判断条件 3 ≤ X ≤ 7 的测试项应该写成 【21】 。

A.Case 3 <= X <= 7 B.Case 3 <= X , X<= 7

C.Case Is <= 7 , Is >= 3 D.Case 3 To 7

分析:Case条件表达式中,使用Is关键字和关系运算符配合使用,不能使用逻辑运算符。

Case 3<=X,X<=7的等价于Case True,False之类的语句,X就和True或False比较,不能达到

数值判断的目的

答案:D

22. 下面 【22】 语句,可以将列表框List1中的当前选定的列表项的值替换成"ABC"。

m "ABC",dex ="ABC"

(dex)= "ABC" D.前三项均可

分析:当前选定的列表项的文本有两种方法表示:(dex)和

,但不能更改,是只读属性。选项B和C中列表框的名称有误。选项A

通过AddItem在当前选中项的位置上添加一项,其作用等同于替换该项。

答案:A

23. 设窗体上有名称为Option1的单选按钮,且程序中有语句:If =True Then

下面语句中与该语句不等价的是 【23】 。

A. If Then B. If Option1=True Then

C. If Value=TrueThen D. If Optionl Then

分析:OptionButton的默认属性是Value属性,故选项B和D是省略默认属性的写法,是等价

的,选项C省略了对象名,在窗体中省略对象名表明默认是窗体。

答案:C

24. 下列Caption属性值中, 【24】 设置了热键。

A.File B.V&iew C.H*elp D.#Tool

分析:在Caption属性中用&设置热键。

答案:B

25. 如果x是一个正实数,对x的第3位小数四舍五入的表达式是 【25】 。

A.0.01*Int(x+0.005) B. 0.01*Int(100*(x+0.005))

C.0.01*Int(100*(x+0.05)) D. 0.01*Int(x+0.05)

分析:若x=12.45678,则A项的结果是:.12 ;则B项的结果是: 12.46 ;则C项的结果是:

12.5 ;则C项的结果是: .12

答案:B

5x3

26. 把数学表达式表示为正确的VB表达式应该是 【26】 。

2y6

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)

分析:乘法符号*不能省略,除法用/,分母和分子上的括号不可省略。

答案:D

27. 设有如下语句:

Dim a,b As Integer

c="Visual Basic"

d=#7/20/2005#

以下关于这段代码的叙述中,错误的是 【27】 。

A. a被定义为Integer类型变量 B. b被定义为Integer类型变量

C. c中的数据是字符串 D. d中的数据是日期类型

分析:a后面没有As 类型名,表示缺省类型为Variant型

答案:A

28. 设程序运行时文本框中没有内容,当在文本框输入“ABC”时,窗体上显示 【28】 。

Private Sub Txtinput_KeyPress()

Print

End Sub

A.AABABC B.AAB C.A D.

AB A

ABC AB

分析:文本框的KeyPress事件是在按键字符显示之前执行的

答案:D

29. 执行下列程序段,窗体上打印的内容为 【29】 。

Dim x, y, z

x=2:y=3:z=x=y

Print x; y; z

A.2 3 2 B.2 2 2

C.2 3 False D.False False False

分析:x,y,z都是变体型,可以接受任意类型的值。x和y都被赋了数值型数据,z被赋了

一个逻辑型数据(关系表达式x=y的结果),故z的值输出时也是逻辑型False

答案:C

30. 窗体上有名称为Commandl的命令按钮和名称为Textl的文本框

Private Sub Commandl_Click()

=”程序设计”

us

End Sub

Private Sub Textl GotFocus()

=”等级考试”

End Sub

运行以上程序,单击命令按钮后 【30】 。

A.文本框中显示的是“程序设计”,且焦点在文本框中

B.文本框中显示的是“等级考试”,且焦点在文本框中

C.文本框中显示的是“程序设计”,且焦点在命令按钮上

D.文本框中显示的是“等级考试”,且焦点在命令按钮上

分析:语句us触发了Text1的GotFocus事件,故Text1中的文本又因为执行

=”等级考试”而变为“等级考试”。

答案:B

31. 某人创建了1个工程,其中的窗体名称为Form1,之后又添加了1个名为Form2的窗体,并

希望程序执行时先显示Form2窗体,那么,他需要做的工作是 【31】 。

A.在工程属性对话框中把“启动对象”设置为Form2

B.在Form1的Load事件过程中加入语句 Load Form2

C.在Form2的Load事件过程中加入语句

D.在Form2的TabIndex属性设置为1,把Form1的TabIndex属性设置为2

分析:窗体没有TabIndex属性,只有控件才有。Load语句只能将窗体装入内存不能显示。

Show可以显示窗体,但C选项说在Form2的Load事件中显示Form2,而程序开始执行时Form2

尚未载入,故不执行Form2的Load事件,Form2也无法显示。

答案:A

32. 假定有如下的命令按钮(名称为Command1)事件过程:

Private Sub Command1_Click()

x=InputBox("输入:","输入整数")

MsgBox "输入的数据是:”,,”输入数据:"+x

End Sub

程序运行后,单击命令按钮,如果从键盘上输入整数10,则以下叙述中错误的是

【32】 。

A.x的值是数值10 B.输入对话框的标题是“输入整数”

C.信息框的标题是“输入数据:10” D.信息框中显示的是“输入的数据是:”

分析:考核InputBox函数和MsgBox语句的格式,x的值是字符串“10”

答案:A

33. 在窗体上画1个命令按钮(名称为Command1)和1个文本框(名称为Text1),然后编写事件

过程:

Private Sub Command1_Click()

x = Val()

Select Case x

Case 1, 3

y = x * x

Case Is >= 10, Is <= -10

y = x

y = -x

End Select

End Sub

程序运行后,在文本框中输入3,然后单击命令按钮,则以下叙述中正确的是 【33】 。

A.执行y=x*x B.执行y=-x

C.先执行y=x*x,再执行y=-x D.程序出错

分析:测试表达式的值符合一个Case条件时,执行对应分支语句块后结束Select Case语句。

答案:A

34. 以下循环语句中在任何情况下都至少执行一次循环体的是 【34】 。

A.Do While <条件> B.While <条件>

循环体 循环体

Loop Wend

C.Do D.Do Until <条件>

循环体 循环体

Loop Until <条件> Loop

分析:Do…Loop语句特点。

答案:C

35. 执行以下语句后,a的值为 【35】 。

Dim a As Integer

a = 1

Do Until a = 100

a = a + 2

Loop

A.99 B.100 C.溢出 D.101

分析:Until a=100,此循环的结束条件是a=100,但a的初值是1,步长是2,不可能得到值

100,因此,循环一直进行下去,到达32767后继续循环,超过Integer型数据表示范围而溢

出。


本文标签: 属性 窗体 分析 语句 设置