admin 管理员组

文章数量: 1086019


2024年3月27日发(作者:自己开发一个小程序)

VB笔试模拟试卷278

(题后含答案及解析)

题型有:1. 选择题 2. 填空题

选择题(每小题2分,共70分)下列各题A、B、C、D四个选项中,只有

一个选项是正确的,请将正确选项涂写在答题卡相应位置上。

1. 算法的时间复杂度是指

A.执行算法程序所需要的时间

B.算法程序的长度

C.算法执行过程中所需要的基本运算次数

D.算法程序中的指令条数

正确答案:C

解析:算法的复杂度主要包括算法的时间复杂度和空间复杂度。算法的时间

复杂度是指执行算法所需要的计算工作量,即算法执行过程中所需要的基本运算

的次数;算法的空间复杂度一般是指执行这个算法所需要的内存空间。

2. 下列叙述中,不属于设计准则的是( )。

A.提高模块独立性

B.使模块的作用域在该模块的控制域中

C.设计成多入口、多出口模块

D.设计功能可预测的模块

正确答案:C

解析:大量软件设计表明,以下的设计准则是可以借鉴为设计的指导和对软

件结构图进行优化,这些准则是:提高模块独立性;模块规模适中;深度、宽度、

扇出和扇入适当;使模块的作用域在该模块的控制域中;应减少模块的接口和界

面的复杂性:设计成单入口、单出口的模块;设计功能可预测的模块。

3. 用InputBox函数设计的对话框,其功能是

A.能接收用户输入的数据,但不会返回任何信息

B.能接收用户输入的数据,并能返回用户输入的信息

C.既能用于接收用户输入的信息,又能用于输出信息

D.专门用于输出信息

正确答案:B

4. 要使文本框可输入多行文字,要更改的默认选项是

A.SorollBoars和MultiLine

B.Visible

C.ScrillBoars

D.以上都不是

正确答案:A

解析:Multiline被设置为True时可以使用多行文字,不用改SorollBoars.

5. 三种基本结构中,能简化大量程序代码行的是( )。

A.顺序结构

B.分支结构

C.选择结构

D.重复结构

正确答案:D

解析:重复结构又称为循环结构,它根据给定的条件,判断是否需要重复执

行某一相同或类似的程序段,利用重复结构可以简化大量的程序行。

6. 软件开发的结构化生命周期方法将软件生命周期划分成______。

A.定义、开发、运行维护

B.设计阶段、编程阶段、测试阶段

C.总体设计、详细设计、编程调试

D.需求分析、功能定义、系统设计

正确答案:A

解析:通常,将软件产品从提出、实现、使用维护到停止使用退役的过程称

为软件生命周期。它可以分为软件定义、软件开发及软件运行维护三个阶段。

7. 关系数据库管理系统能实现的专门关系运算包括______。

A.排序、索引、统计

B.选择、投影、连接

C.关联、更新、排序

D.显示、打印、制表

正确答案:B

解析:关系数据库管理系统能实现的专门关系运算,包括选择运算、投影运

算、连接运算。

8. 在单链表中,增加头结点的目的是______。

A.方便运算的实现

B.使单链表至少有一个结点

C.标识表结点中首结点的位置

D.说明单链表是线性表的链式存储实现

正确答案:A

解析:头结点不仅标识了表中首结点的位置,而且根据单链表(包含头结点)

的结构,只要掌握了表头,就能够访问整个链表,因此增加头结点目的是为了便

于运算的实现。

9. 结构化程序设计的3种基本结构是( )。

A.过程、子程序和分程序

B.顺序、选择和重复

C.递归、堆栈和队列

D.调用、返回和转移

正确答案:B

解析:程序的3种基本控制结构包括顺序、选择和重复(循环),这3种结构

就足以表达出各种其他形式的结构。

10. 软件设计中,有利于提高模块独立性的一个准则是

A.低内聚低耦合

B.低内聚高耦合

C.高内聚低耦合

D.高内聚高耦合

正确答案:C

解析:内聚性是一个模块内部各个元素间彼此结合的紧密程度的度量,内聚

是从功能角度来度量模块内的联系;耦合性是模块间互相连接的紧密程度。在软

件设计中,有利于提高模块独立性的一千准则是高内聚低耦合。选项C正确。

11. 阅读下列程序。 Private Sub Command1_Click( )Dim i As Integer, k As

Integer k=2 For i=1 To 3 Print Fun(k) ; Next End Sub Function Fun(j As Integer)

Static b a=0 a=a + 1 b=b + 1 Fun=a b + j End Function 程序运行后,单击命令按

钮输出结果是

A.2 3 4

B.3 4 5

C.5 6 7

D.3 5 6

正确答案:B

解析:在此题中,被调过程是一个函数过程,它有一个形式参数j,在被调过程

声明中,定义了一个参数a,初值为0,一个静态变量b。语句a=a + 1和b = b + 1分

别使a和b各增加1,然后返回H的值,因为b是静态变量,所以每次调用同一个参

数k时,b会保留前次的数值,使输出结果变化,否则每次输出的结果都将是一样

的。根据分析,第一次调用时a=1,b=1,Fun=3;第二次调用时a=1,b=2,Fun=4;第三次

调用时a=1,b=3,Fun=5。所以最后的输出结果是345。

12. 为使图像框的大小自动适应图像的大小,则应( )。

A.将其AutoSize属性值设置为True

B.将其AutoSize属性值设置为False

C.将其Shape属性值设置为True

D.将其Stretch属性值设置为False

正确答案:D

13. 表达式Abs(-5)+Len(“ABCDE”)的值是

A.5ABCDE

B.-5ABCDE

C.10

D.0

正确答案:C

解析:考查考生对函数的掌握情况。两个函数的返回值均为数值型。

Abs(jnumber):返回参数的绝对值,类型和参数相同。Len(string):返回String字符串

内字符的数目,或是存储变量所需的字节数。

14. 在窗体上画一个命令按钮和一个文本框,其名称分别为Commandl和

Text1,把文本框的 Text属性设置为空白,然后编写如下事件过程: Private

Sub Commandl_click( ) a=InputBox(“Enter an integer”)

b=InputBox(“Enter an integer”) =b+a End Sub 程序运行

后,单击命令按钮,如果在输入对话框中分别输入8和10,则文本框中显示内

容是( )。

A.108

B.18

C.810

D.出错

正确答案:A

15. 单击命令按钮执行以下程序,输出结果为( )。 Private Sub

Commandl Click( ) Dim x As Integer,y As Integer x=12:y=32

Call Proc(x,y) Printx;y End Sub Public Sub Proc(n As

Integer,ByVal m As Integer) n=n Mod 10 m=m Mod 10 End

Sub

A.12 32

B.2 32

C.2 3

D.12 3

正确答案:B

解析:本题考查过程调用中的参数传递。参数传递时默认为地址传递,如果

实参为常量或者形参加上Bvval关键字说明,则为传值传递。本题中第一个参数

为地址传值传递,第二个参数为传递,因此调用以后x值为2,而y不变。

16. 假定一个工程由一个窗体文件Forml和两个标准模块文件Modell及

Model2组成。 Modell代码如下: Public X As Integer Public Y As

Integer Sub S1( ) X=I S2 End Sub Sub S2( )

y=d SubMode12的代码如下:Sub Main( ) S1End Sub其中

Sub Main被设置为启动过程。程序运行后,各模块的执行顺序是( )

A.Form1→Mode11→Mode12

B.Mode11→Mode12→Form1

C.M0de12→Mode11→Form1

D.Mode12→Form1→Model1

正确答案:C

解析:本题考查Visual Basic。程序执行过程中各模块和窗体的调用过程。

按照本题中代码执行,首先程序调用执行Model2,Model2中调用S1,S1数组

属于Modell模块,Modell会调用S2,S2致使Forml执行,可以得出正确答案为

选项C。

17. 在窗体上有一个名为Text1的文本框和一个名为Commandl的命令按

钮,并编写有如下事件过程: Private Sub Commandl Click( ) Dim i As

Integer,n As Integer For i=0 To 50 i=i+3 n=n+1 Ifi>10Then Exit For

Next Text1.Text=Str(n) End Sub 程序运行后,单击命令按钮,

在文本框中显示的是( )。

A.2

B.3

C.4

D.5

正确答案:B

解析:本题考查循环程序的分析。题中循环变量为i,步长为1,循环体中i

每次变化都增加3,因此执行一次循环后,i的值增加4,当i大于10时退出循

环,所以每次循环后i的值为:3,7,11。当i为11时退出循环,所以循环共执

行了3次。

18. 在窗体上画一个名为Command1的命令按钮,然后编写如下代码:

Option Base 1 Private Sub Command1_ Click( ) Dim arr(4, 4)

For i = 1 To 4 For j = 1 To 4 arr(i, j) = (i - 1) * 3 + j Next j Next i For

i = 1 To 2 For j = 1 To 2 Print arr(i, j) Next j Next i End Sub程

序运行后,单击命令按钮,输出结果为______。

A.3 4 6 7

B.7 8 10 11

C.1 2 4 5

D.8 9 12 13

正确答案:C

19. 下列程序段的执行结果为______。 For x=5 To 1 Step-1 For

Y=1 To 6-x Print Tab(Y+5);”*”; Next Y Print Next x

A.***** **** *** ** *

B.***** **** *** ** *

C.* ** *** **** *****

D.* *** ***** ******* *********

正确答案:C

解析:格式:Tab[(n)],设定显示或打印下一个表达式之间的间隔本段程序

的作用是:通过外循环的循环体,打印出5行星号,内循环随外循环变量x的变

化共执行5次,每次执行,就在第x行上,从空5个字符的位置起打印x个星号。

20. 目录列表框的Path属性的作用是

A.显示当前驱动器或指定驱动器上的路径

B.显示当前驱动器或指定驱动器上的某目录下的文件名

C.显示根目录下的文件名

D.只显示当前路径下的文件

正确答案:A

解析:Path属性因控件而异,目录列表框的Path属性只显示当前驱动器或

指定驱动器的路径,而不显示相关的文件名及文件。故本题选择A项。

21. 执行下列语句后,显示输入对话框,此时如果单击“确定”按钮,则

变量strlnput的内容是______。 atrInput=Input Box(“请输入字符串”,”字符串

对话框”,”字符串”)

A.请输入字符串

B.字符串对话框

C.字符串

D.空字符串

正确答案:C

解析:InputBox(“请输入字符串”,”字符串对话框”,”字符串,),其中“请

输入字符串”为在文本框显示给用户的信息,“字符串对话框”为显示在输入框

标题栏中的标题,“字符串”为在没有用户输入时返回的值。

22. 下面对语句:”Open” Text. Dat “for Output As # FreeFile” 的功能说明中

错误的是______。

A.以顺序输出模式打开文件Text. Dat

B.如果文件不存在,则建立一个新文件

C.如果文件已存在,则打开该文件,新写入的数据将增添到该文

件中

D.如果文件已存在,则打开该文件,新写入的数据将覆盖原有的

数据

正确答案:C

解析:Output定为顺序输出模式。如果文件Text. Dat不存在,则建立一个

新文件,可以将数据写入到文件中去。如果文件已存在,则该语句打开

已存在的文件,新写入的数据将覆盖原来的数据,而不是增添。

23. 在窗体上画一个命令按钮,然后编写如下代码:Private Type Record ID

As Integer Name As String * 20End TypePrivate Sub Command1_Click( )

Dim MaxSize, NextChar, MyChar Open “d:tempfemale. txt” For Input As #1

MaxSize = LOF(1) For NextChar = MaxSize To 1 Step -1 Seek #1,

NextChar MyChar = Input(1, # 1) Next NextChar Print EOF(1) Close

#1End Sub程序运行后,单击命令按钮,其输出结果为______。

A. True

B.False

C.0

D.Null

正确答案:B

24. 执行下面的程序段后,x的值为______ 。 X=5 For i=1 To 20

Step 2x=x+ i5 Next i

A.21

B.22

C.23

D.24

正确答案:A

25. 阅读程序: Sub subP(b( ) As Integer) For i=1 To 4 b(i)=2

* i Next i End Sub Private Sub Command1_Click( ) Dim a(1 To

4) As Integer a(1)=5 a(2)=6 a(3)=7 a(4)=8 subP a( ) For i=1 To 4 Print a(i)

Next i End Sub 运行上面的程序,单击命令按钮,输出结果为

A.2 4 6 8

B.5 6 7 8

C.10 12 14 16

D.出错

正确答案:A

解析:本题中初始化时给数组a分别赋了四个值。接着调用过程subP,在

过程中对数组a的值较初始化时有所不同。在这种情况下,执行Print a(i)的操作,

数组a最后一次的赋值有效。故输出结果应为调用过程中得到的a(i)值。选项A

正确。

26. 有如下函数过程: Function Fun (By Val x As Ingeger, ByVal y As

Integer)As IntegerDo While…y<>0reminder=x Mod y x=y

y=reminder Loop Fun=x End Function 以下是调用该函数的

事件过程,该程序的运行结果是 Private Sub Command1_Click( ) Dim a

As Integer Dim b As Integer a=100:b=25 x=Fun(a,b)Print x

End Sub

A.0

B.25

C.50

D.100

正确答案:B

解析:本题的难点是子函数调用过程。子函数Fun的功能是求x和y的公约

数,由“欧几里德”求最大公约数的算法可知,当余数r为0时,x为x和y的

最大公约数。变量,的值通过子函数名Fun返回。

27. 以下程序运行后输出的结果是 ______。 Option Base 1 Private

Sub Form_Click( ) Dim A(20) For K=1 To 20A(K)=K

Next K Print A(K) End Sub

A.20

B.441

C.400

D.出错信息

正确答案:D

解析:本题定义A是一个一维数组,数组元素的下标范围允许为1~20。在

循环中,将下标变量的平方赋给该数组的每个元素。当循环结束后,输出A数

组的第K个元素的值,但此时K的值是21,A数组无此元素,故产生下标越界

的错误。

28. 只能用来显示字符信息的控件是______。

A.文本框

B.图片框

C.图像框

D.标签框

正确答案:D

解析:文本框不仅可以显示字符信息,还可以编辑字符信息;图片框可以显

示图像和字符信息,还能容纳其他控件;图像框只能用来显示图像;标签框只能

用来显示字符信息。

29. 以下程序段中,循环体执行的次数是______。 i=0 : j=1

While i<=j+1 Print i; i=i+2;i=j-1 Wend

A.1次

B.2次

C.3次

D.无法确认

正确答案:A

解析:当循环开始执行时,条件i<=j+1成立,执行循环体,使i的值变为

2,j的值变为o,然后再次判断条件i<=j+1,显然不成立,结束循环。所以循

环只执行了1次。

30. Visual Basic程序中分隔各语句的字符是

A.’

B.:

C.

D._

正确答案:B

解析:在一般情况下,输入程序时要求一行一句,一句一行。但Visual Basic

允许使用复合语句行,即把几个语句放在一行中,各语句之间用冒号(:)隔开。

31. 当形参是变量时,相应的实参可以是( )。

A.变量和常量

B.数组元素

C.表达式

D.以上全部

正确答案:D

解析:当形参是变量时,相应的实参应是符合要求的数据,可以是常量、变

量、数组元素、函数调用和表达式。

32. 可以在常量的后面加上类型说明符以显示常量的类型,用来表示字符

串常量的是

A.%

B.#

C.!

D.$

正确答案:D

解析:下面是常量类型及其类型说明符: 整型% 长整型&

单精度浮点数! 双精度浮点数# 货币型@字符串型$ 字节型、布尔

型、日期型、对象及变体型常量没有类型说明符。

33. 在窗体上画一个列表框和一个命令按钮,其名称分别为List1和

Command1,然后编写如下事件过程 Private Sub Form_Load( )

m”Iteml” m”Item2”

m”Item3” End Sub Private Sub Command1_click( )

(unt)=“AAAA” End Sub 程序运行后,单击命令按钮,

其结果为______。

A.把字符串“AAAA”添加到列表框中,但位置不能确定

B.把字符串“AAAA人”添加到列表框的最后(即“Item3”的后面)

C.把列表框中原有的最后一项改为“AAAA”

D.把字符串“AAAA”插入到列表框的最前面(即“Item1”的前面)

正确答案:B

解析:List属性返回或设置控件的列表部分的项目。对于ListBox控件,List

属性是可读写的。由于Listl中项目默认的索引值是0到ListCotmt-1,现在对

ListCount这个项目赋值,就是在Listl的最后加入—条新记录,所以本题答案是

B。

34. 以下关于过程及过程参数的描述中,错误的是______。

A.调用过程时可以用控件名称作为实际参数

B.用数组作为过程的参数时,使用的是“传地址”方式

C.只有函数过程能够将过程中处理的信息传回到调用的程序中

D.窗体(Form)可以作为过程的参数

正确答案:C

解析:在Visual Basic中,允许用对象,即窗体或控件作为通用过程的参数。

在用控件作为参数时,必须考虑到作为实参的控件是否具有通用过程中所列的控

件的属性。为此,VB提供了一个TypeOf语句。所以调用过程时可以用控件名

称作为实际参数。因此选项AD正确。当用数组作为过程的参数时,使用的是“传

地址”方式,而不是“传值”方式。所以选项B正确。在VB中,通用过程分为

两类,即子程序过程和函数过程,前者叫Sub过程,后者叫做Function过程。

函数过程(Function)可通过过程名返回值,但只能返回一个值;Sub过程不能通过

过程名返回值,但是可以通过参数返回值,并可以返回多个值。因此选项C错

误。

35. 在窗体上画—个命令按钮,然后编写如下事件过程: Private Sub

Command1_Click( )Dim I, NumRandomizeDo For I=1 To 1000

Num=Int(Rnd*100) Print Num; Select Case Num Case 12

Exit For Case 58 Exit Do Case 65,68,92 End End Select

Next ILoop End Sub 上述事件过程执行后,下列描述中正确的是______。

A.Do循环执行的次数为1000次

B.在For循环中产生的随机数小于或等于100

C.当所产生的随机数为12时结束所有循环

D.当所产生的随机数为65、68或92时窗体关闭、程序结束

正确答案:D

解析:首先有一个Do循环作为外层循环:Do[语句块]Loop。在这种情况下,

程序将不停地执行Do和Loop之间的“语句块”。接着是一个内循环,即For循

环,并且变量的初值为1,终值为1000,步长为1,每执行一次循环,变量的值

自动加1,接着生成一个100之内的随机数赋给变量Num。输出变量Num的值,

最后是一个多分支控制结构,多分支语句的格式为:Select Case测试表达式Case

表达式表列1 语句块1[case表达式表列2 语句块2…[Case Else[语句块n]]End

Select多分支语句通过情况语句来实现,以Select Case开头,以End Select结束。

功能是,根据“测试表达式”的值,从多个语句块中选择符合条件的一个语句块

执行。随机数的公式为:Int((upperbound—lowerbound+1)*Rnd+lowerbounD),由

题目中的Int(Rnd*100)可知,随机数的取值范围为0~99,所以随机数不可能取

到100,选项B不正确。根据题意,通过Num变量的值来控制程序的走向。第

一种情况:如果产生的随机数的值为12,则结束For循环,即内循环停止执行,

但是外循环还继续执行,所以选项C不正确,随机数为12时不会结束所有循环,

只是结束了内循环。第二种情况:如果产生的随机数为58则结束Do循环,同

时内循环也停止,所以Do循环不一定执行1000次,选项A不正确。第三种情

况:如果产生的随机数的值是65、68或92,则执行End方法,End是VB中关

闭表单的方法,所以当所产生的随机数为65、68或92时窗体关闭、程序结束。

本题答案为D。

填空题(每空2分,共30分)请将每一个空的正确答案写在答题卡上。注

意:以命令关键字填空的必须拼写完整。

36. 实现算法所需的存储单元多少和算法的工作量大小分别称为算法的

【 】。

正确答案:空间复杂度和时间复杂度

解析:算法的复杂性是指对一个在有限步骤内终止算法和所需存储空间大小

的估计。算法所需存储空间大小是算法的空间复杂性,算法的计算量是算法的时

间复杂性。

37. 数据流的类型有【 】和事务型。

正确答案:变换型

解析:典型的数据流类型有两种:变换型和事务型。 变换型:是指信息

沿输入通路进入系统,同时由外部形式变换为内部形式,进入系统的信息通过变

换中心,经加工处理以后再沿输出通路变换成外部形式离开软件系统。 事务

型:在很多软件应用中,存在某种作业数据流,它可以引发一个或多个处理,这

些处理能够完成该作业要求的功能,这种数据流就叫做事务。

38. 按数据流的类型,结构化设计方法有两种设计策略,它们是变换分析

设计和【 】

正确答案:事务分析设计

解析:典型的数据流图有两种,即变换型和事务型。按照这两种类型把设计

方法分为两类,即变换分析设计和事务分析设计。

39. 软件测试是保证软件质量的重要手段,而软件测试的主要和重要的测

试方法是通过测试数据和【 】的设计来实现。

正确答案:测试实例

解析:进行软件测试时,应精心设计测试实例和选择测试数据,以对系统进

行全面测试。

40. Visual Basic应用程序中标准模块文件的扩展名是【 】。

正确答案:.bas

41. 下面程序代码实现单击命令按钮Command1时输出如下结果:1 -1

-1 1 1 -1 1 1 1 该程序不完整,请填空。 Private Sub

Command1_Click( ) DimX(3,3) For I=1 To 3 ForJ=1 To 3

If______ThenX(I,J)=1 End IfIf I<J Then

正确答案:I>J

42. 数学式子5+(a+b)×2对应的Visual Basic表达式是_____________。

正确答案:5+(a+b)*2

解析:本题考查数学式与表达式之间的转化。VB中一个表达式写在同一行,

不可以省略运算符。括号必须成对出现。

43. 滚动条的最小值属性是_________.最大值属性是__________。

正确答案:Min Max

解析:在一般情况下,垂直滚动条的值由上而下递增,最上端代表最小值用

Min属性表示;最下端代表最大值用Max属性表示。水平滚动条的值从左向右

递增,最左端代表最小值也是用Min属性表示;最右端代表最大值也是用Max

属性表示。滚动条的值均以整数表示,其取值范围为32 768~32 767。

44. 以下程序的功能是:从键盘上输入若干个数字,当输入负数时结束输

入,统计出若干数字的平均值,输出结果。请填空。Private Sub Form_click( )Dim

x, y As SingleDim z As Integerx=InputBox(“Enter a score”)Do while【 】

y=y+xz=z+1x=InputBox(“Enter a score”)LoopIf z=0 Thenz=1End Ify=【 】Print

yEnd Sub

正确答案:x>=0,y/z

解析:根据表达式的值有条件地执行一组语句。语法If condition

Then[statements][Else elsestatements]或者,可以使用块形式的语法:If condition

Then[statements][ElseIf condition-n

Then[elseifsmtements]...[Else[elsestatements]]End If当条件为True时,或直到条件

变为True时,重复执行一个语句块中的命令。语法Do[{While |

Until}condition][statements][Exit Do][statements]Loop或者可以使用下面这种语

法:Do[statements][Exit Do][statements]Loop[{While | Until}condition]本题的循环

首先判断输入是否大于0,如果是则处理这个输入,否则结束循环。循环体内的

第二个判断语句判断的是当前输入是否比当前的最小值小,如果是则改写当前最

小值为输入值,否则结束判断语句。

45. 文件根据数据性质,可分为【 】文件和【 】文件。

正确答案:程序,数据

解析:如果一个文件内存放的是程序数据,则该文件是程序文件。否则该文

件内存放的就是供其他程序使用的数据,也就是数据文件。

46. 假定建立了一个工程,该工程包括两个窗体,其名称(Name属性)分别

为Form1和Form2,启动窗体为Form1。在Form1上画一个命令按钮Command1,

程序运行后,要求当单击该命令按钮时,Form1窗体消失,显示窗体Form2,请

将下面的程序补充完整。Private Sub Command1_Click( )【 】Form1Form2.

【 】End Sub

正确答案:Unload,Show或Show 1

解析:Unload语句、Show方法Unload语句用来将指定窗体从内存中清除。

格式:Unload窗体名称Show方法用来显示一个窗体。格式:窗体名称.Show[模

式]参数“模式”用来确定显示窗体的状态,可以取值0或1。取值为0(0值是缺

省值)则窗体是“无模式’窗体,当该窗体显示出来时,不但可以对该窗体进行

操作,还可以对其他显示出来的窗体进行操作;取值为1则窗体是“模式”窗体,

当该窗体显示出来时,只能对该窗体进行操作,只有当该窗体关闭后,才能对其

他窗体进行操作。

47. 把窗体的KeyPreview属性设置为True,然后编写如下两个事件过程:

Prirate Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)Print

Chr(Keycode)End SubPrivate Sub Form_KeyPress(KeyAscii As Integer)Print

Chr(KeyAscii)End Sub程序运行后,如果直接按键盘上的“A”键(即不按住Shift

键),则在窗体上输出的字符分别是【 】和【 】。

正确答案:A ,a

解析:如果希望窗体先接收键盘事件,刚必须把窗体的KeyPreview属性设

置为True,否则不能触发窗体的键盘事件。这里所说的键盘事件包括KeyPress、

KeyDown和KeyUp。当不按住Shift键,直接按键盘上的“A”键时(实际上就是

输入“a”),先触发Form_KeyDown事件,然后再触发Form_KeyPress事件。

KeyDown事件返回的是“键代码”(KeyCode),字母“A”和“a”的“键代码”

都为65,所以Print chr(KeyCode)打印出字符“A”;KeyPress事件返回的是“ASCII

码”(KeyAscii),“a”值97,所以Print Chr(KeyAscii)打印出字符“a”。

48. 以下程序用来建立一个5×5矩阵,该矩阵两条对角线上的元素为1,

其余元素为0,请补充完该程序。该程序运行结果如下图所示。Private Sub form

Click( )Dim s(5, 5)As Integerfor N =1 To 5for M = 1 To 5if【 】Or【 】thenS(N,

M)=1 ElseS(N. M)= 0End ifNext MNext Nfor N =1 To 5for【 】Picture1. Print

Tab(M *3); s(N, M);Next MPrintNext NEnd Sub

正确答案:n=m ,n=6-m,m=1 To 5

解析:本题难点是对数组下标的操作,矩阵两条对角线上的元素在数组中下

标的表示形式为“s(i,i)”和“s(1,上界值+1-i)(i=1,2,... n)”。空打印Print操

作是换行。

49. 在窗体上画一个命令按钮,然后编写如下程序: Function fun(ByVal

num As Long)As Long Dim k As Long k=1 num=Abs(num)

Do While num k=k*(num Mod 10) num=num10 Loop

fun=k End Function Private Sub Command1_Click( ) Dim n As Long

Dim r As Long n=InputBox(“请输入一个数”) n=CLng(n) r=fun(n)

Print r End Sub 程序运行后,单击命令按钮,在输入对话框中输入”345”,

输出结果为【 】。

正确答案:60

解析:程序首先要求用户输入一个数,然后将这个数转化为长整型传递入函

数fun。本题中传入的数字是345。函数fun中首先将传入的参数取绝对值,然

后进入循环: 第一次循环结束的时候: k=5 num=34 第二次循环结束

的时候: k=20 num=3 第三次循环结束的时候: k=60 num=0

50. 为了把一个Visual BASIC应用程序装入内存,只要装入【 】文件即

可。

正确答案:ctvbbblank

解析:Visual Basic总是以ASCII格式保存工程文件(.vbp)。工程文件包含了

反映工程的设置的项目(包括工程中的窗体和模块、引用、以及为控制编译而选

取的各种各样的选项,等等)。当工程文件被装入内存的时候,所有相关的应用

程序的信息也就都被装入了内存。


本文标签: 过程 窗体 模块 程序 循环