2009VB程序设计b卷期末试卷

更新时间:2024-03-02 22:20:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

2009/2010学年第2学期 《VB程序设计》期末考试试卷

说明: (1)考生应将答案填写在答卷上,否则作无效处理;

(2)考试时间为120分钟。

试题一、判断题(每小题2分,共20分)

说明:在以下提供的若干陈述中,逐一判断其正确与否,用√表示正确,用×表示错误。

(1) 事件是由Visual Basic预定义的对象能够识别的动作。 (2) 整型变量有Byte、Integer和Long类型3种。 (3) 在循环体内,循环变量的值不能被改变。 (4) Sub过程名在过程中必须被赋值。

(5) 若Visual Basic中容器取缺省坐标系,则坐标原点在容器左上角、单位长度为像素。 (6) 移动框架时框架内控件也随之移动,所以框架内控件的Left和Top属性值也随之改变。 (7) 使用单选钮控件数组时,它们响应同一个Click事件,由Index参数值来区分不同的按钮。 (8) 影像框的Stretch属性设置为True时,影像框的大小会根据显示的图片大小进行调整。 (9) 设计菜单中每一个菜单项分别是一个控件,每个控件都有自己的名称。 (10) 若要新建一个磁盘上的顺序文件,可用Output和Append方式打开文件。

试题二、单选题(每小题2分,共20分)

(11) 将VB新建的“标准EXE”工程保存在磁盘上,至少会产生 (11) 文件。

[A] .frx和.frm [B] .exe和.vbp [C] .vbp和.frm [D] .frm和.bas (12) Int(Rnd*100)表示的是 (12) 范围内的整数。 [A] [0,100] [B][1,100] [C] [0,99]

[D][1,99]

(13) 已知字符串变量x存放\,表达式Val(\的值是 (13) 。 [A] 0 [B] &H12 [C] 12 [D] 18 (14) 在窗体Form1的一个事件过程中,不能用 (14) 来清除窗体上所绘制的图形。 [A] Form1.Cls [B] Me.Cls [C] Form.Cls [D] Cls (15) 由“For i=1 To 25 Step 4”决定的循环结构被执行 (15) 次。 [A] 25 [B] 5 [C] 6 [D] 7

(16) 要使得驱动器列表框控件Drive1发生变化时目录列表框Dir1的路径与之保持一致,应编写 (16) 事件代码。

[B] [A]

Private Sub Drive1_Change() Private Sub Drive1_Change()

Dir1.Path = Drive1.Drive Drive1.Drive = Dir1.Path

End Sub End Sub

[D] [C]

Private Sub Dir1_Change() Private Sub Dir1_Change()

Dir1.Path = Drive1.Drive Drive1.Drive = Dir1.Path

End Sub End Sub

第1页(共5页)

(17) 选中复选框控件时,复选框的Value属性值为 (17) 。

[A] 1 [B] 0 [C] True [D] False (18) 将焦点主动设置到指定的控件或窗体上,应采用 (18) 方法。 [A] SetDate [B] SetFocus [C] SetText [D] GetGata (19) 将通用对话框控件以“打开文件”对话框方式打开,可选 (19) 方法。 [A] ShowOpen [B] Action [C] Open [D] FileName (20) 执行语句“Write #1, 234; -34.56, \”后,相应的文件内被写入 (20) 。 [A] 234,-34.56,\ [B] 234;-34.56,\ [C] 234,-34.56,Hi,2004-06-11 [D] 234 -34.56 \

试题三、程序填空题(每空2分,共20分,)

说明:阅读下列程序说明和相应程序,在每小题提供的若干可选答案中,挑选一个正确答案。

程序1【程序说明】以下程序按下式计算y,x由键盘输入。Fuction f(x)是计算y的自定义函数。

2x?1x??5??y??x?sinx?ex?5??x??5

?x?5?logxx??510?【程序】

Private Sub Command1_Click() Dim x As Single, y As Single

(21) (22) Print \End Sub

Function f(x As Single) As Single Dim y as Single If x < -5 Then

y = 2 * x - 1

ElseIf x >= -5 And x <= 5 Then (23) Else

(24)

End If

(25) End Function

【选项】

(21) [A] InputBox \

[C] x= InputBox(\(22) [A] call f(x)

[B] y=f

(23) [A] y = x * Sin(x) + e ^ x

[C] y = x·Sin(x) + e ^ x

[B] InputBox(\[D] y = InputBox(\[C] y=f(x)

[D]f(x)

[B] y = x·Sin(x) + Exp(x) [D] y = x * Sin(x) + Exp(x)

第2页(共5页)

(24) [A] y = Sqr(x - 5) + Log(x)

[C] y = (x - 5)^1/2 + Log(x) / Log(10)

[C] f = y (25) [A] Print y

[B] y = (x - 5)^1/2 + Log(x) [D] y = Sqr(x - 5) + Log(x) / Log(10) [B] Print f [D] y = f

程序2【程序说明】以下程序随机产生100个两位正整数,先对这些数按从大到小的顺序排序并按

每行10个显示在窗体上。再找出所有的个位数字与十位数字之和等于10的数。 【程序】

Private Sub Form_Click()

Dim a(100) As Integer, i As Integer, j As Integer, t As Integer, x As Integer, y As Integer For i = 1 To 100

a(i) = (26) Next i

For i = 1 To 99

For j = i + 1 To 100 If a(i) < a(j) Then

(27) End If Next j Next i

For i = 1 To 100 Print a(i);

(28) Next i

For i = 1 To 100

x = (29) '取十位数字 y = a(i) Mod 10 '取个位数字 If x + y = 10 Then Print a(i) Next i End Sub

Private Sub Swap( (30) ) As Integer Dim Temp As Integer

Temp = X : X = Y : Y = Temp End Sub 【选项】

(26) [A] Int(Rnd * 90 + 10) (27) (28)

[C] Int(Rnd * 99) [A] Call Swap a(i), a(j) [C] Temp = Swap(a(j), a(i)) [A] If i = 10 Then Print [C] If i \\ 10 = 0 Then Print

[B] Int(Rnd * 100)

[D] 10 To 99

[B] Call Swap(a(i), a(j)) [D] Swap(a(j), a(i))

[B] If i = 10 *n Then Print [D] If i Mod 10 = 0 Then Print

(29) [A] a(i) / 10 [B] a(i) \\ 10 [C] Int(a(i))/10 [D] Fix(a(i))

(30) [A] ByVal X As Integer, ByVal Y As Integer [B] ByVal X As Single, ByVal Y As Single [C] ByRef X As Integer, ByRef Y As Integer [D] ByRef X As Single, ByRef Y As Single

第3页(共5页)

试题四、程序改错题(每小题2分,

共10分)

以下程序可以在查找输入框(Text2)中输入查找内容,按“确定”按钮后光标自动选定在文本框Text1中第一个找到的内容。程序运行效果如右图所示。在程序代码中还存在5处错误,请写出标示处对应的正确语句。 Dim n As Integer, i As Integer Private Sub Command1_Click() n = Len(Text2.Text) i = 0 '--------(1)--------

Do Until i <= Len(Text1.Text) '--------(2)--------

If Left(Text1.Text, n) = Text2.Text Then '--------(3)-------- Text1.SelStart = i - 1

Text1.SelText = Text2.Text '--------(4)-------- Text1.SetFocus Exit Do End If i = i + 1 Loop

If i > Len(Text1.Text) Then

MsgBox \没找到\!\ '--------(5)-------- Text2.Text = \ Text2.SetFocus End If End Sub

试题五、程序阅读题(每小题5分,共20分)

程序1、阅读下列程序,写出单击窗体后程序运行结果。 Private Sub Form_Click()

Dim a As Integer, b As Integer a = 5: b = 0 Do Until a < 0 b = b + a a = a - 1

Print \ Loop End Sub

程序2、已知水平滚动条HScroll1的有关属性已经在属性窗口进行了如下的设置:

HScroll1.Min=1:HScroll1.Max=10

HScroll1.SmallChange=1: HScroll1.LargeChange=2:HScroll1.Value=5

阅读以下程序,写出连续3次单击水平滚动条HScroll1右端箭头后,窗体上显示的结果。 Private Sub HScroll1_Change() Dim y As Integer

If HScroll1.Value Mod 2 = 0 Then y = y + HScroll1.Value End If

第4页(共5页)

Print \End Sub

程序3、写出程序运行后窗体上显示的结果。 Dim x As Integer

Private Sub Form_load() Timer1.Interval = 1000 Timer1.Enabled = True End Sub

Private Sub Timer1_Timer() Call sub1(x) x = x * 2 + 1

If x > 9 Then Timer1.Enabled = False End Sub

Public Sub sub1(n As Integer) n = n + 1 Print \End Sub

程序4、画出单击命令按钮Command1后图片框Picture1中显示的图形。 Private Sub Form_Load()

Picture1.Scale (-10, 10)-(10, -10) End Sub

Private Sub Command1_Click() Picture1.Line (-5, 5)-(5, -5) Picture1.Line (-5, -5)-(5, 5) Picture1.Circle (0, 0), 5 End Sub

试题六、程序设计题(10分)

按给出的公式计算圆周率π的近似值。计算公式为:π/4 = 1-1/3+1/5-1/7+……,直到最后一项的绝对值小于10-6为止。

第5页(共5页)

本文来源:https://www.bwwdw.com/article/rz2a.html

Top