导航菜单
首页 >  vb程序设计期中考试  > VB期中考试试卷

VB期中考试试卷

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.在一行内写多条语句时,每个语句之间用________来分隔。

A), B): C)、 D);

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

A) 14 B) 4 C) 20 D) 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)

Print (2)a(i);

If (3)I mod 5=0 then print

Next i

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之间的数(含100与200),求最大值与最小值。要求将原始的10个数与最大、最小值用Print语句直接输出在窗体上,并有相应的提示文字,如下图所示。(12分)

4.建立一个7行7列的二维数组,两条对角线上的元素为1,其余元素为0,并在窗体上显示输出。(12分)

浙江树人大学

2010~2011学年度第2学期期中考试试卷[B1] 考试课目:《Visual Basic程序设计》答题纸

班级

学号姓名

题号一二三四总分

分数

题号 1 2 3 4 5 6 7 8 9 10

答案 b c b c b b b a b b

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

A B C D A B C D

(1) √(5) √

(2) √(6) √

(3) √(7) √

(4) √(8) √

三、编程题(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

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

Next i

Print

Print "最大值="; Max

Print "最小值="; Min

End Sub

4.建立一个7行7列的二维数组,两条对角线上的元素为1,其余元素为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

相关推荐: