南京工业大学VB期末考试复习vb期末考试试卷9王飞0A

vb期末考试试卷9王飞0A

满分:100分

姓名:________

1、单项选择题(本题共计50分)

1、一个应用程序_________窗体。( )

A、只许有一个

B、可以没有

C、应该有两个

D、可包括多个

2、以下关于事件的说法,正确的是________。 ( )

A、事件是由系统预先定义好的,能够被对象识别的动作

B、用户可以根据需要建立新的事件

C、事件的名称是可以改变的,由用户预先定义

D、不同类型的对象所能识别的事件一定不相同

3、VisualBasic中的标准模块文件的扩展名是____________。 ( )

A、.reg

B、.frm

C、.bas

D、.vbp

4、所谓____________就是使某个对象进入活动状态(又称激活)的一种操作或动作。( )

A、事件

B、属性

C、方法

D、对象

5、一只白色的足球踢进球门,则白色、足球、踢、进球门是________。( )

A、属性、对象、方法、事件

B、属性、对象、事件、方法

C、对象、属性、方法、事件

D、对象、属性、事件、方法

6、下面________语句,可以将列表框List1中当前选定的列表项的值替换成“ABC”。( )

A、List1.AddItem“ABC”,List1.ListIndex

B、List1.Text=“ABC”

C、List1.List(List1.ListIndex)=“ABC”

D、前三项均可

7、下面所列的控件属性中,其值既能在程序设计时设定,又能在程序运行时通过赋值改变的是________。( )

A、List1.ListCount

B、Text1.Index

C、Dir1.Path

D、Label1.Visible

8、在VB中,下列关于控件的属性或方法中,搭配错误的有

________个。
①Timer1.Interval
②List1.Cls
③Text1.Print

List1.RemoveItem
⑤Vscroll1.Value
⑥Picture1.Print
( )

A、0

B、1

C、2

D、3

9、单选按钮(OptionButton)用于一组互斥的选项中。若一个应用程序包含多组互斥条件,可在不同的________中安排适当的单选按钮,即可实现。( )

A、框架控件(Frame)或图象控件(Image)

B、组合框(ComboBox)或图象控件(Image)

C、组合框(ComboBox)或图片框(PictureBox)

D、框架控件(Frame)或图片框(PictureBox)

10、若在一个应用程序窗体上,依次创建了CommandButton、TextBox、Label1等控件,则运行该程序显示窗体时,________会首先获得焦点。( )

A、窗体

B、CommandButton

C、Label1

D、TextBox

11、如果要在两个菜单命令项之间加一条分隔线,可在标题文本框中键入________。( )

A、-

B、+

C、&

D、#

12、在VisualBasic最基本的对象是________,它是应用程序的基石。( )

A、标签

B、窗体

C、文本框

D、命令按钮

13、VisualBasic程序设计时常用的Print、Cls属于________。( )

A、属性

B、打印字库

C、方法

D、事件

14、滚动条的____________属性表示当用户单击滚动条的空白处,滑块移动的增量值。( )

A、Max

B、Value

C、SmallChange

D、LargeChange

15、关于窗体Name属性的叙述,正确的是________。 ( )

A、窗体Name属性可以具有与别的公共对象相同的名字

B、窗体Name属性和变量定义一样

C、窗体Name属性最长可达255个字符

D、窗体Name属性不以具有与别的公共对象相同的名字

16、对正实数X的第四位小数四舍五入的VB表达式是________。( )

A、0.001*Int(x+0.0005)

B、0.001*(1000*x+0.5)

C、0.001*Int(1000*x+5)

D、0.001*Int(1000*(x+0.0005))

17、设整型变量a、b的当前取值分别为200与20,以下赋值语句中不能正确执行的是

________。( )

A、Text1=a/b*a

B、Text1=a*a/b

C、Text1=“200”*a/b

D、Text1=a&b&a

18、函数Cint(–3.5),Int(–3.5),Fix(–3.5)的值分别是________。( )

A、-3,–4,–3

B、-4,–4,–3

C、-3,–4,–4

D、-4,–3,–3

19、有如下程序代码:
Private Sub Command1_Click( )
s=Sin(3.1415926/2)
MsgBox s
End Sub
程序运行后,消息对话框显示_________。
( )

A、0

B、1

C、1.5708

D、2

20、VB表达式Sqr(a+b)^3*2中优先进行运算的是________。( )

A、Sqr函数

B、+

C、^

D、*

21、有如下程序:


Private Sub Command1_Click( )
s = Fix(-23.1)
e = Int(23.1)
Print Sin(e+s)
End Sub
运行时输出的结果是__________。( )

A、-1

B、0

C、1

D、23

22、日期类型(Date)在程序中运用时,日期类型必须用______符号括起来。( )

A、#

B、@

C、$

D、%

23、如果一个变量未指明数据类型,那么,VB默认这个变量为______变量。( )

A、变体型

B、整型

C、公共

D、字符串型

24、语句


Print 4 + 5\6*7/8 Mod 9
的值是____________。( )

A、4

B、5

C、6

D、7

25、执行语句


Print Format(1234.567,“##,##0.00”)
后,输出结果是____________。( )

A、1234.57

B、1,234.57

C、1,234.567

D、1,234.56

26. 在窗体上画一个命令按钮,名称为Command1,然后编写如下程序:Private Sub Command1_Click( )

Dim a As Integer,b As Integer

Do While b <100

b=b+5

a=a+b

If b>20 Then Exit Do

Loop

Print a,b

End Sub

程序运行后,如果单击命令按钮,则在窗体上显示的内容是_________。

A. 50 20

B. 75 25

C. 50 25

D. 75 20

(1分) 27. 有如下程序:

Private Sub Command1_Click( )

score=65

select Case score

Case Is<60

a$=“F”

Case 60 To 69

a$=“D”

Case 70 To 79

a$=“C”

Case 80 To 89

a$=“B”

Case else

a$=“A”

End Select

MsgBox a$

End Sub

程序运行后,消息对话框中显示的内容为_______。

A. A

B. B

C. C

D. D

(1分) 28. 存在如下程序:

Private Sub Command1_Click( )

a=Val(Inp utBox(“请输入”))

b=Val(InputBox(“请输入”))

x=a+b

If a>b Then

x=a–b

endif

Print x

End Sub

运行后,从InputBox对话框中连续输入3和4,输出结果为_______。

A. 3

B. 34

C. 7

D. 0

(1分) 29. 在窗体上添加一个命令按钮,名为Command1,一文本框,名为Text1,则执行如下事件过程后,文本框中的输出为______。

Private Sub Command1_Click( )

For i = 1 To 4

x = 3

For j = 1 To 3

For k = 1 To 3

x = x+3

Next k

Next j

Next i

Text1.Text=Str(x)

End Sub

A. 6

B. 12

C. 18

D. 30

30、下列有关数组的说法中,不正确的是________。( )

A、在窗体模块中不可以定义全局数据组

B、可以使用Erase语句释放所有数组所占据的存储储空间

C、语句Dim X(3.6+2)As Integer定义了一个维上界是6的一维的整型数组

D、形参数组的类型可以是定长符串类型

31. 在窗体模块的通用声明处用下面的语句声明变量、数组,正确语句有

________个。

①Public A(5) As Integer

②Public N As Integer

③Public St As String

④Private b() As Integer

A. 2

B. 3

C. 4

D. 1

(1分)

32. 下面有关数组处理的叙述中,不正确的是_______。

①控件数组可由多个控件组成,这些控件具有相同的名字

②控件数组中的元素可以是不同类型的控件

③用ReDim语句重新定义动态数组时,不得改变该数组的数据类型

④可用Public语句在窗体模块的通用说明处定义一个全局数组

A. ①②③④

B. ②④

C. ①②③

D. ①③④

33、假如用复制、粘贴的方法建立了一个命令按钮数组Command1,以下对该数组的说法错误的是________。( )

A、命令按钮的所有Caption属性都是Command1

B、在代码中访问命令按钮只需使用名称Command1

C、命令按钮的大小都相同

D、命令按钮共享相同的事件过程

34. 在窗体的通用声明处有语句Dim A() As Single,以下在某事件过程中重定义此数组的一组正确语句是:____________。

A. ReDim A(3,3)

ReDim A(4,4) As Integer

B. ReDim A (3,3)

ReDim Preserve A (4,4)

C. ReDim A(3)

ReDim A(3,3) As Integer

D. ReDim A (3,3)

ReDim Preserve A(3,4)

35、运行程序产生死循环时,按________键可以终止程序的运行。( )

A、Ctrl+C

B、Ctrl +Z

C、Ctrl+Break

D、单击停止运行按钮

36、以下____________情况不会进入中断状态。( )

A、在程序运行中,按Ctrl+C键。

B、程序运行中,发生了运行错误。

C、用户在程序中设置了断点,当程序运行到断点时。

D、采用单步调试方式,每运行一个可执行代码行后。

37、窗体上有名为Drivel与Dirl的驱动器列表框与文件夹列表框,需要在选定驱动列表框中的列表项时,文件夹表框中内容随之改变,正确的语句及语句的位置是________。( )

A、Dir1.Path=Drive1.Path ′位于Drive1 Change()过程

B、Dir1.Path=Drive1.Path ′位于Dir1 Change()过程

C、Dir1.Path=Drive1. Drive ′位于Drive1 Change()过程

D、Dir1.Path=Drive1. Drive ′位于Dir1 Change()过程

38. 如果打开一个不存在的文件,下列____________访问模式将出错。

A. Output

B. Append

C. Input

D. Random

(1分) 39. 要指定在文件列表框中只显示具有“归档”、“只读”属性的文件,只需把文件列表框的____________设置为False。

A. Archive

B. ReadOnly

C. Normal

D. Hidden

(1分) 40. 若在应用程序中用Private Sub Sub1(Xasinteger,YasSingle)定义了子程序Sub1,调用程序中的变量I、J均为Integer型,则正确调用子程序Sub1的Call语句是________。

①Call Sub1(I,J)

②Call Sub1(3.1415,1)

③Call Sub1(3.14,234)

④Call Sub1(“245”, “231.5”)

A. ①③

B. ③④

C. ①②③

D. 无

(1分) 41. 执行VB工程时第一次出现的窗体称启动窗体,关于该窗体的叙述不正确的是____________。

A. 若不对启动窗体进行设置,工程中的第一个窗体默认为启动窗体

B. 启动窗体可进行设置,设置方法是执行“工程”菜单中的“属性”

C. 启动窗体和其他窗体一样可以隐藏和关闭

D. 启动窗体一般作为用户工作的界面,不可更改

(1分) 42. 阅读下列程序:

Private Sub Command1_Click( )

Dim a(1 To 3)As Integer

For i=1 To 3

a(i)=i

Next i

Call sub1(a)

For i=2 To 3

Print a(i)

Next i

End Sub

Public Sub sub1(a( ) As Integer)

For i=1 To 3

a(i)=i*i

Next i

End Sub

当发生Command1_Click事件时,输出的结果是________ 。

A. 1 2

B. 2 3

C. 4 9

D. 1 4

43以下说法正确的是____________ ( )

A、在Visual Basic中,过程可以嵌套定义也可以嵌套调用

B、在Visual Basic中,过程可以嵌套定义但不可以嵌套调用

C、在Visual Basic中,过程可以不嵌套定义但可以嵌套调用

D、在Visual Basic中,过程不可以嵌套定义也不可以嵌套调用

44、在窗体的General段声明变量时,不能使用____________关键字。( )

A、Dim

B、Public

C、Private

D、Static

45. 给出下列程序代码,在单击命令按钮时的输出结果是________。

Private Sub Command1_Click ( )

Dim x As Integer, y As Integer

x=1:y=1

For n=1 TO 3

z=FirstFunc (x, y)

Print n, z

Next n

End Sub

Private Function FirstFunc (x As Integer, y As Integer) As Integer Dim n As Integer

Do While n <= 4

x=x+y

n=n+1

Loop

FirstFunc=x

End Function

A. 1 6 2 11 3 16

B. 2 6 1 3 11 16

C. 1 2 3 4 5 6

D. 2 1 3 1 3 3

(1分) 46. 给出下列程序代码在第一次单击命令按钮时文本框Text1和Text2中的内容,第二次单击命令按钮时文本框Text1和Text2的内容。

Dim y As Integer

Private Sub Command1_Click( )

Dim x As Integer

x=2

Text1.Text=SecondFunc(FirstFunc(x), y)

Text2.Text=FirstFunc(x)

End Sub

Private Function FirstFunc(x As Integer)

x=x+y:y=x+y

FirstFunc=x+Y

End Function

Private Function SecondFunc(x As Integer, y As Integer)

SecondFunc=2*x+y

End Function

A. 10,10 20,20

B. 20,20 30,30

C. 50,50 10,10

D. 10,10 58,58

47、一般来说,当变量名称相同而作用域不同时,局限性_____________的变量总会用“阴影”遮住局限性不太大的变量。( )

A、大

B、小

C、更小

D、比较小

48. 如下程序,运行的结果是____________。

Public Function pi!(x!, n%)

If n = 0 Then

pi = 1

ElseIf n Mod 2 = 1 Then

pi = x * pi(x, n \ 2)

Else

pi = pi(x, n \ 2) \ x

End If

End Function

Private Sub Command1_Click()

Print pi(3, 7)

End Sub

A. 18

B. 7

C. 14

D. 27

49、可以在________中,使用语句Public PubStr As String*20定义一个定长字符串。( )

A、窗体模块

B、标准模块

C、类模块

D、三者均可

50. 执行下面的程序段,结果是________。

X=Windth/2

Y=Height/2

Picture1.Line(X,Y)–(X,Y–2000)

Picture1.Line(X,Y+2000)–(X,Y)

Picture1.Line–(x–2000,Y)

A. 在图片框中画形如┫的交叉直线

B. 在图片框中画形如┠ 的交叉直线

C. 在图片框中画形如┳ 的交叉直线

D. 在图片框中画形如┻ 的交叉直线

2、填空题(本题共计30分)

1. 可使用列表框的______ 方法向列表框中增加一个项目。

答案:

(1分) 2. 在VB中一个汉字的长度等于__(1)__ 个英文字母的长度。

答案:

(1分) 3. 要使文本框可以显示多行文本,应把文本框的__(1)___ 属性设置为True。

答案:

(1分) 4. 已知K=2,J=3,A=True,则VB表达式(K–J<=K)AND(NOT A)OR(K+J>=J)的值为 _____。

答案:

(1分) 5. 能正确产生[1--30]之间的随机整数的表达式是 ________ 。

答案:

(1分) 6. 已知A=7.5,B=2,C=-3.6,表达式 a>b and c>a or ab 的值为___(1)____.

答案:

(1分) 7. Visual Basic有三种运行模式,分别是__(1)___ 、运行模式和中断模式,其中__(2)__ 模式可以监视表达式和变量的值。

答案:

(2分)

8. ___(1)___的功能是显示当前过程所有局部变量的当前值。

答案:

(1分) 9. __(1)__属性决定了按Tab键时,焦点在各个控件移动的顺序。

答案:

(1分) 10. 运行下面的程序,单击窗体后在窗体上显示的内容是____(1)______;若将A语句与B语句的位置互换,再次执行程序,单击窗体后在窗体上显示的内容是____(2)_______。

Private Sub Form_click()

Dim x, y As Integer

x = 1: y = 0

Do While x < 3

y = y + x 'A

x = x + 1 'B

Loop

Print x, y

End Sub

答案:

(2分) 11. 下列函数调用时弹出的对话框中按钮的个数为________ 。

MsgBox ("程序非法!",vbAbortRetryIgnore,"消息提示:")

答案:

(1分) 12. 执行下面的程序,在窗体上显示的输出结果的第一行是 ______ ,第三行是______ ,Form_Click( )事件过程中的第二个For–Next循环共执行了 ______ 次。

Option Explicit

Option Base 1

Private Sub Form_Click( )

Dim x(6) As Integer,I As Integer,j As Integer

For i=1 To 6

x(i)=i^2

Print x(i);

Next i

Print

For j=1 To i–2

Call sub1(x(j),j)

Print j

Next j

End Sub

Public Sub sub1(x As Integer,m As Integer)

If x–m<=2 Then

m=m+2

Else

m=m+3

End If

End Sub

答案:

(3分) 13. 下列程序执行后,打印结果是______ 。

Option Explicit

Private Sub Command1_Click( )

Dim i As Integer

Dim sum As Integer

sum = 0

For i = 3 To 100

If i Mod 3 = 0 And i Mod 11 = 0 Then

sum = sum + i

End If

Next i

Print sum

End Sub

答案:

(1分) 14. 执行下面程序后,A(1,3)的值是 __(1)___ ,A(2,2)的值是 ___(2)___ ,

A(3,1)的值是 ___(3)___ 。

Option Explicit

Option Base 0

Private Sub Form_Click( )

Dim A(3,3)As Integer,I As Integer

Dim k As Integer,m As Integer

m=16

For k=6 To 0 Step–1

If k>=2 Then

For I=0 To 5–k

A(k–2+I,I)=m

m=m–1

Next I

Else

For I=0 To k

A(k–I,3–I)=m

m=m–1

Next I

End If

Next k

For k=0 To 3

For I=0 To 3

Print A(k,I);

Next I

Print

Next k

End Sub

答案:

(3分) 15. 下面程序的功能是判断100~999之间的所有素数,所谓素数是指只能被1和它本身整除的数。完善下列程序。

Private Sub Form_Click( )

Dim i As Integer

Dim k As integer

For i=100 To 999

For k=2 To i–1

If ___(1)__ Then

____(2)___

End If

Next k

If ___(3)___ Then

Print i

End If

Next i

End Sub

答案:

(3分) 16. 下面和程序功能是将一个由字母与数字相混的字符串中选出字符串,并把该字符串在窗体上打印出来,请完善下面程序。

Option Explicit

Private Sub Command1_Click( )

Dim s As String,k As Integer

Dim r As String,i As Integer,t As String

s=“aa11bb22Cc33”

For i=1 To Len(s)

t= (1)

If t>=“a”And t<=“z”Or t>=“A”And t<=“Z”Then

r=r & t

End If

Next i

Print r

End Sub

答案:

(1分) 17. 求满足如下条件的三位数,它除以11所得的商等于各位数字的平方和。例如:550/11=50=5×5+5×5+0。完善下列程序。程序代码如下:

Private Sub Form_Click( )

Dim a As Integer,b As Integer,c As Integer,n As Integer,j As Integer For a= __(1)__

For b=0 To 9

For c=0 To 9

n= __(2)__

If (n Mod 11 =0)And(n\11=a*a+b*b+c*c)Then

Print n;“/11=”;n/11;“=”;a*a;b*b;c*c

End If

Next c

Next b

Next a

End Sub

答案:

(2分) 18. 已知数组A(4,4),各个元素在运行程序时,被赋值并打印,形成四阶方阵。程序执行后,产生一个转置矩阵(即行列互换),仍放在数组A中,并打印出来。请完善下列程序。例如:

1 2 3 41 1 1 1

1 2 3 4 2 2 2 2

1 2 3 4 -------> 3 3 3 3

1 2 3 4 4 4 4 4

Private Sub Command1_Click( )

Dim a(4,4)

For k=1 To 4

For j=1 To 4

a(k,j)=j

Print a(k,j);

Next j

Print

Next k

Print

For k=2 To 4

For j=1 To _______

t=a(j,k)

a(j,k)=_______

a(k,j)=t

Next j

Next k

End Sub

答案:

(2分) 19. 如下程序,运行的结果是____________,若将A语句改为Static i%,运行的结果是___________。 Public Sub Proc(a%())

Dim i% 'A

Do

a(i)=a(i)+a(i+1)

i=i+1

Loop While i<2

End Sub

Private Sub Command1_Click()

Dim m%, i%, x%(10)

For i=0 To 4

x(i)=i+1

Next i

For i=1 To 2:

Call Proc(x)

Next i

For I=0 To 4:

Print x(i);

Next i

End Sub

答案:

(2分)-3.问答题

1.求100以内的孪生素数。孪生素数是指相差为2的两个素数,如3和5、5和7、11和13……

要求有一个通用过程。

答:

(10分) 2.设有一个数组a(5,5),要求计算:

(1)、所有元素之和;

(2)、各行的和;

(3)、各列的和;

(4)、所有靠边元素的和。

参考答案1.d,2.a,3.c,4.a,5.b,6.c,7.d,8.c,9.d,10.b,11.a,12.b,13.c,14.d,15.d,16.d,17.b,18.b,19.b,20. b,21.b,22.a,23.a,24.b,25.b,26.b,27.d,28.c,29.d,30.b,31.a,32.b,33.b,34.d,35.c,36.a,37.c, 38.c,39.c,40.d,41.d,42.c,43.c,44.d,45.a,46.d,47.b,48.d,49.b,50.a

1.AddItem,

2.1,

3.MultiLine ,

4.True,

5.Int(Rnd()*30)+1,

6.false,

7.设计模式,中断模式,

8.本地窗口,

9.TabIndex,10.3 3,3 5,11.3,12.1 4 9 16 25

36,7,2,13.198,14.6,8,14,15.i Mod k=0,Exit For,k=I,16.mid(s,i,1),17.1 to

9,a*100+b*10+c,18.k,a(k,j),19.8 8 3 4 5,3 5 7 4 5