VB期中考试试卷-及参考答案(B1卷)-

VB期中考试试卷-及参考答案(B1卷)-
VB期中考试试卷-及参考答案(B1卷)-

2010~2011学年度第 2 学期期中考试试卷 [B1] 考试科目:《 Visual Basic 程序设计》考试形式:开卷 -上机考答题时间: 120 分钟班级学号姓名

一、选择题( 2 分/题,共20 分)

1.以下有关VB 对象名称(Name)属性的叙述,正确的是。

A )对象的Name 属性值可以为空

B )窗体的Name 属性用来标识和引用窗体

C)可以在程序运行期间改变对象的Name 属性值

D )窗体的Name 属性值是显示在标题栏中的字符串

2.Visual Basic6.0 集成环境的主窗口中不包括。

A )标题栏

B )菜单栏C)状态栏D)工具栏

3.在开发VB 应用程序时,一个工程一般至少应含有__ 。

A )标准模块文件和类模块文件

B )工程文件和窗体文件

C)工程文件和类模块文件 D )工程文件和标准模块文件

4..为了使命令按钮(名称为Command1)右移200,应使用的语句是

____________________________________________________________ 。

A )Command1.Move -200

B )Command1.Move 200

C )Command1.Left= Command1.Left+200

D )Command1.Left= Command1.Left-200

5.当程序运行时,系统自动执行启动窗体的__ 事件过程。

A )Click B)Load C)Unload D )GotFocus 6.Visual Basic 有多种类型的窗口,若要在设计时看到窗体窗口,以下操作不正确的是。

A)打开“视图”菜单,选择“对象窗口

B )双击 VB 窗口工作区的空白处

C )单击“工程资源管理器”中的“查看对象”按钮

D )双击“工程资源管理

器”中对应的窗体名 7.下面关于属性和方法的描述中,不正确的是

A )属性是对象的特征,方法是对象的行为

B )属性和方法都有值

C )属性可以被赋值

D )方法表示能执行的操作 8.下面关于标签和文本框的

描述中,正确的是 ____________________________

A )文本框和标签都可以显示文字

B )文本框和标签都可以在运行时输入文字

C )文本框和标签都有 Caption 属性

D )文本框和标签都有 Text 属性

9.在一行内写多条语句时,每个语句之间用 ___ 来分隔。

10.表达式 16/4-2^5*8/4 MOD 5\2 的值 为

二、读程填空题(每题 4分,共 32分)

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

1. 【程序说明】随机产生 n 个100以内的正整数, 放在数组 A 中存储。 n 由InputBox () 输入 ,并每 5 个数据一行打印输出。

【程序】

Private Sub Command1_Click ()

Dim a () As Integer

n = InputBox (" 请输入一个正整数 ") ReDim ( 1) a (n )

For i = 1 To n

a(i) = Int(Rnd * 100)

Prin t (2) a(i);

If ( 3) I mod 5=0

A ) ,

B )

C ) 、

D )

A ) 14

B ) 4

C ) 20

Next i

then print

End Sub

【供选择的答案】

( 1)A.a() B.a% C. n*i D. a(n)

( 2) A. print j B. a(i); C. print n*i D. print n

(3)A. i=n B. i=0 C. I mod 5=0 D. i\5

2. 【程序说明】用Array 函数建立一个含有8 个元素的数组,然后查找并输出该数组中元素的最大值

【程序】Option Base 1 (4)

Private Sub Command1_Click()

Dim arr1, i, Max as Integer

arr1=Array(12,435,76,24,78,54,866,43)

(5) Max=arr1(1)

For i=1 To 8

If arr1(i)>Max Then _(6)_ Max=arr1(i)

Next i

Print" 最大值是:";Max

End Sub

【供选择的答案】

( 4) A.dim array B. Option Base 1 C.const=12 D. dim a(5) ( 5) A.arr1(i) =12 B. arr1=12 C. n= n*i D. Max=arr1(1)

( 6) A.arr1 (i )= Max B. Exit for C. Max=arr1(i) D. i=i+1

3.【程序说明】产生100个1~4之间的随机整数,并进行统计。数组元素S(i)(i=1,2,3,4) 的值表示等于i 的随机数的个数,要求输出如下格式:

S(1)=. . . S(2)=. . S(3)=. . . S(4)=. . . 【程序】

Dim S(4) As Integer

Randomize

For I=1 To 100

X=Int(Rnd * 4+1) S(x)= S(x)+1 (7) Next I For I=1 To 4

Print "S(";I;")=";S(I) , (8) Next I

【供选择的答案】 ( 7) A. s(i)-1 B. S(x)+1 C. n*i D. s(i)+1

(8)A. "S(x)=";S(I)

B. s(i);

C. "S(I)=";S(I)

D. "S(";I;")=";S(I) ,

三、编程题( 4*12=48 分)

1.通过使用 MsgBox ()输出对学号和密码进行验证的结果。要求:⑴学

号为 数字,输入非数字字符则给出提示;⑵密码为“ TJin1234 ”,输入不正确,提示信

息,若单击“取消”按钮,则结束程序;⑶以上两者都输入正确,也给出提示成功 的信息。提示信息对话框效果如下图所示。 (12 分)

2.输入一串字符,统计各个英文字母出现的次数(大小写不区

分) ,并对 出现的字母显示其出现的个数,运行界面如下图所示。 (12 分)

3.随机产生 10 个 100 ~200 之间的 小值。要求将原始的 10 个数

与最大、 体上,并有相应的提示文字,如下图所示。 (12 分)

(含 100 与 200 ),求最大

值与最 最小值用 Print 语句

直接输出在窗

4.建立一个7 行7 列的二维数组,两条对角线

1,其余元素上的元素为为0,并在窗体上显示输出。(12

分)

浙江树人大学

2010~2011学年度第 2 学期期中考试试卷 [B1] 考试

课目:《 Visual Basic 程序设计》答题纸

班级学号姓名

、选择题( 10*2=20 分)

、读程选择填空题(每空 4 分,共 32分)

请在各小题正确选项的对应位置处填“ √

三、编程题(48 分。各题程序调试后的源代码要写在试卷上的

各小题后面,程序的源代码和试卷WORD 文档一同打包后提交到服务器的ftp 上)1.通过使用MsgBox ()输出对学号和密码进行验证的结果。要求:⑴学号为数字,输入非数字字符则给出提示;⑵密码为“

TJin1234 ”,输入不正确,提示信息,若单击“取消”按钮,则结束程序;⑶以上两者都输入正确,也给出提示成功的信息。提示信息对话框效果如下图所示。(12 分)

参考答案:

Private Sub Command1_Click()

End

End Sub

Private Sub Command2_Click()

If Not IsNumeric(Text1) Then

MsgBox " 学号中有非数字字符!", 64, "提示"

Text1 = ""

Text1.SetFocus

ElseIf Text2 = "TJin1234" Then

MsgBox " 您成功进入系统。", 48, "成功"

Else

a = MsgBox(" 密码错误," + Chr(13) + Chr(10) + " 您不能进入系统。

", 5 + 16, " 警告")

If a = 4 Then

Text2 = ""

Text2.SetFocus

Else Command1_Click

End If

End If

End Sub

2.输入一串字符,统计各个英文字母出现的次数(大小写不区

分),并对出现的字母显示其出现的个数,运行界面如下图所示。(12 分)

参考答案2:

Private Sub Command1_Click()

Picture1.Cls

Dim i%, s$, c As String * 1, l%, k%

Dim arr(1 To 26) As Integer

s = Text1.Text

l = Len(s)

For i = 1 To l

c = UCase(Mid(s, i, 1))

If c >= "A" And c <= "Z" Then

arr(Asc(c) - 65 + 1) = arr(Asc(c) - 65 + 1) + 1 End If Next i

k = 0

For i = 1 To 26

If arr(i) <> 0 Then

Picture1.Print Chr(i + 64) & "=" & arr(i); "

k = k + 1

If k Mod 6 = 0 Then Picture1.Print

End If

Next i

End Sub

3.随机产生10 个100~200 之间的数(含100 与200),求最大值与最小值。要求将原始的10 个数与最大、最小值用Print 语句直接输出在窗体上,并有相应的提示文字,如下图所示。(12 分)

参考答案3:

Private Sub Command1_Click()

Print " 产生10 个100--200 之间的数:"

Randomize

Max = 100: Min = 200

For i = 1 To 10

x = Int(Rnd * 101 + 100) Print x;

If x > Max Then Max = x

If x < Min Then Min = x

Next i

Print

Print " 最大值="; Max

Print " 最小值="; Min

End Sub

1,其余元素4.建立一个7 行7 列的二维数组,两条对角线上的

元素为为0,并在窗体上显示输出。 ( 12 分)

Private Sub Form_Click() Dim s%(1 To 7, 1 To 7), i%, j% For i = 1 To 7

For j = 1 To 7

If i = j Or i + j = 8 Then s(i, j) = 1 Else s(i, j) = 0 End If Print s(i, j); Next j Print

Next i End Sub

相关主题
相关文档
最新文档