(考试时间90分钟,满分100分)
一、选择题((1)~(35)每小题2分,共70分)
下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。
(1)算法的时间复杂度是指______。
A.执行算法程序所需要的时间
B.算法程序的长度
C.算法执行过程中所需要的基本运算次数
D.算法程序中的指令条数
(2)下列叙述中正确的是______。
A.线性表是线性结构
B.栈与队列是非线性结构
C.线性链表是非线性结构
D.二叉树是线性结构
(3)下面关于完全二叉树的叙述中,错误的是______。
A.除了最后一层外,每一层上的结点数均达到最大值
B.可能缺少若干个左右叶子结点
C.完全二叉树一般不是满二叉树
D.具有结点的完全二叉树的深度为[log2n]+1
A.程序的规模
B.程序的易读性
C.程序的执行效率
D.程序的可移植性
(5)在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是______。
A.概要设计
B.详细设计
C.可行性分析
D.需求分析
(6)数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是______。
A.控制流
B.加工
C.数据存储
D.源和潭
(7)软件需求分析一般应确定的是用户对软件的______。
A.功能需求
B.非功能需求
C.性能需求
D.功能需求和非功能需求
(8)下述关于数据库系统的叙述中正确的是______。
A.数据库系统减少了数据冗余
B.数据库系统避免了一切冗余
C.数据库系统中数据的一致性是指数据类型的一致
D.数据库系统比文件系统能管理更多的数据
(9)关系表中的每一横行称为一个______。
A.元组
B.字段
C.属性
D.码
(10)数据库设计包括两个方面的设计内容,它们是______。
A.概念设计和逻辑设计
B.模式设计和内模式设计
C.内模式设计和物理设计
D.结构特性设计和行为特性设计
(11)如果要向工具箱中加入控件和部件,可以利用“工程”菜单中的______命令。
A.引用
B.部件
C.工程属性
D.添加窗体
(12)InputBox函数返回值的类型为______。
A.数值
B.字符串
C.变体
D.数值或字符串(视输入的数据而定)
(13)以下语句的输出结果是______。
Print Format$("32548.5","000,000.00")
A.32548.5
B.32,548.5
C.032,548.50
D.32,548.50
(14)为了把焦点移到某个指定的控件,所使用的方法是______。
A.SetFocus
B.Visible
C.Refresh
D.GetFocus
(15)设a=6,则执行x=IIF(a>5, -1,0)后,x的值为______。
A.5
B.6
C.0
D.-1
(16)在窗体上画一个文本框(其Name属性为Text1),然后编写如下事件过程:
Private Sub Form_Load( )
Text1.Text = ""
Text1.SetFocus
For i = 1 To 10
Sum = Sum + i
Next i
Text1.Text = Sum
End Sub
上述程序的运行结果是______。
A.在文本框Text1中输出55
B.在文本框Text1中输出0
C.出错
D.在文本框Text1中输出不定值
(17)在程序运行期间,如果拖动滚动条上的滚动框,则触发的滚动条事件是______。
A.Move
B.Change
C.Scroll
D.GetFocus
(18)为了在运行时能显示窗体左上角的控制框(系统菜单),必须______。
A.把窗体的ControlBox属性设置为False,其他属性任意
B.把窗体的ControlBox属性设置为True,并且把BorderStyle属性设置为1~3
C.把窗体的ControlBox属性设置为False,同时把BorderStyle属性设置为非0值
D.把窗体的ControlBox属性设置为True,同时把BorderStyle属性设置为0值
(19)以下程序段的输出结果为______。
X = 1
Y = 4
Do Until Y > 4
X = X * Y
Y = Y + 1
Loop
Print X
A.1
B.4
C.8
D.20
(20)将一个窗体设置为MDI子窗体的方法是______。
A.将窗体的名称改为MDI
B.将窗体的MDIChild属性设为True
C.将窗体的MDIChild属性设为False
D.将窗体的Enabled属性设为False
(21)把窗体的KeyPreview属性设置为True,然后编写如下过程:
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
Print Chr(KeyCode)
End Sub
Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)
Print Chr(KeyCode + 2)
End Sub
程序运行后,如果按“A”键,则输出结果为______。
A.A
B.A
C.A
D.A
A B C D
(22)在用Open语句打开文件时,如果省略“For方式”,则打开的文件的存在方式是_____。
A.随机存取方式
B.顺序输入方式
C.顺序输出方式
D.二进制方式
(23)文件列表框控件的______属性用来确定在列表框中显示的文件类型。
A.Path
B.Pattern
C.FileName
D.List
(24)执行下列语句后整型变量a的值是______。
If (3 - 2) > 2 Then
a = 10
Else If (10/2) = 6 Then
a = 20
Else
a = 30
End If
A.10
B.20
C.30
D.不确定
(25)在代码中定义了一个子过程:
Sub P(a,
B.
...
End Sub
下面______调用该过程的格式是正确的。
A.Call P
B.Call P 10,20
C.Call P(10,20)
D.P(10,20)
(26)下列______语句可以为动态数组分配实际元素个数。
A.Dim语句
B.static语句
C.public语句
D.ReDim语句
(27)用于去掉一个字符串的右边的空白部分的函数是______。
A.RTrim$( )
B.Right$( )
C.Asc( )
D.Time$( )
(28)下面______不是Visual Basic的数据类型。
A.Single
B.Object
C.Currency
D.Bool
(29)大部分控件都没有的属性是______。
A.Top
B.Name
C.Visible
D.Interval
(30)CommonDialog控件可以显示______种对话框。
A.4
B.5
C.6
D.7
(31)对变量名说法不正确的是______。
A.必须是字母开头,不能是数字或其他字符
B.不能是Visual Basic的保留字
C.可以包含字母、数字、下划线和标点符号
D.不能超过255个字符
(32)Visual Basic一共有设计、运行和中断三种模式,要使用调试工具应该______。
A.进入设计模式
B.进入运行模式
C.进入中断模式
D.不用进入任何模式
(33)图像框有一个属性,可以自动调整图像框的大小,以适应图像的尺寸,这个属性是______。
A.AutoSize
B.Stretch
C.AutoRedraw
D.Appearance
(34)设在菜单编辑器中定义了一个菜单项,名为menu1。为了在运行时隐藏该菜单项,应使用的语句是______。
A.menu1.Enabled=True
B.menu1.Enabled=False
C.menu1.Visible=True
D.menu1.Visible=False
(35)目录列表框的Path属性的作用是______。
A.显示当前驱动器或指定驱动器上的目录结构
B.显示当前驱动器或指定驱动器上的某目录下的文件名
C.显示根目录下的文件名
D.显示该路径下的文件
二、填空题(每空2分,共30分)
请将每空的正确答案写在答题卡【1】~【15】序号的横线上,答在试卷上不得分。
(1)在先左后右的原则下,根据访问根结点的次序,二叉树的遍历可以分为三种:前序遍历、 【1】 遍历和后序遍历。
(2)结构化程序设计方法的主要原则可以概括为自顶向下、逐步求精、 【2】 和限制使用goto语句。
(3)软件测试是保证软件质量的重要手段,而软件测试的主要和重要的测试方法是通过测试数据和 【3】 的设计来实现。
(4)数据库系统的三级模式分别为 【4】 模式、内部级模式与外部级模式。
(5)数据字典是各类数据描述的集合,它通常包括5个部分,即数据项、数据结构、数据流、 【5】 和处理过程。
(6)为了把一个Visual BASIC应用程序装入内存,只要装入 【6】 文件即可。
(7)语句 print "25+32=" ;25+32 的输出结果是 【7】 。
(8)计时器事件之间的间隔通过 【8】 属性设置。
(9)以下循环的执行次数是 【9】 。
k = 0
Do Until k >= 10
k = k+1
Loop
(10)表达式Fix(-32.68)+Int(-23.02)的值为 【10】 。
(11)在窗体上画一个命令按钮,然后编写如下程序:(假定变量x是一个窗体级变量)
Dim x As Integer
Sub inc(a As Integer)
x = x + a
End Sub
Private Sub Command1_Click( )
inc 2
inc 3
inc 4
Print x;
End Sub
程序执行后,单击Command1命令按钮,输出的结果是 【11】 。
(12)在Visual Basic中可以建立 【12】 菜单和 【13】 菜单。
(13)全局变量必须在 【14】 模块中定义。
(14)以下程序段的输出结果是 【15】 。
num=0
Do While num<=5
num=num+1
Loop
Print num
全国计算机等级考试二级VB笔试模拟试卷答案
一、选择题
(1)C
评析:所谓算法的时间复杂度,是指执行算法所需要的计算工作量。为了能够比较客观地反映出一个算法的效率,在度量一个算法的工作量时,不仅应该与所使用的计算机、程序设计语言以及程序编制者无关,而且还应该与算法实现过程中的许多细节无关。为此,可以用算法在执行过程中所需基本运算的执行次数来度量算法的工作量。
(2)A
评析:根据数据结构中各数据元素之间前后间关系的复杂程度,一般将数据结构分为两大类型:线性结构与非线性结构。如果一个非空的数据结构满足下列两个条件:① 有且只有一个根结点;② 每一个结点最多有一个前件,也最多有一个后件。则称该数据结构为线性结构,又称线性表。所以线性表、栈与队列、线性链表都是线性结构,而二叉树是非线性结构。
(3)B
评析:这里考察完全二叉树与满二叉树的定义及二叉树的性质。满二叉树指除最后一层外每一层上所有结点都有两个子结点的二叉树。完全二叉树指除最后一层外,每一层上的结点数均达到最大值,在最后一层上只缺少右边的若干子结点(叶子结点)的二叉树。因此选项A是正确的,而选项B是错误的。由定义可知,满二叉树肯定是完全二叉树,而完全二叉树一般不是满二叉树,因此选项C是正确的叙述。选项D即二叉树性质(5),也是正确的。
(4)B
评析:结构化程序设计主要强调的是结构化程序清晰易读,可理解性好,程序员能够进行逐步求精、程序证明和测试,以保证程序的正确性。
(5)D
评析:通常,将软件产品从提出、实现、使用维护到停止使用退役的过程称为软件生命周期。也就是说,软件产品从考虑其概念开始,到该软件产品不能使用为止的整个时期都属于软件生命周期。
软件生命周期的主要活动阶段为:
① 可行性研究和计划制定。确定待开发软件系统的开发目标和总的要求,给出它的功能、性能、可靠性以及接口等方面的可行方案,制定完成开发任务的实施计划。
② 需求分析。对待开发软件提出的需求进行分析并给出详细定义,即准确地确定软件系统的功能。编写软件规格说明书及初步的用户手册,提交评审。
③ 软件设计。系统设计人员和程序设计人员应该在反复理解软件需求的基础上,给出软件的结构、模块的划分、功能的分配以及处理流程。
④ 软件实现。把软件设计转换成计算机可以接受的程序代码。即完成源程序的编码,编写用户手册、操作手册等面向用户的文档,编写单元测试计划。
⑤ 软件测试。在设计测试用例的基础上,检验软件的各个组成部分。编写测试分析报告。
⑥ 运行和维护。将已交付的软件投入运行,并在运行使用中不断地维护,根据新提出的需求进行必要而且可能的扩充和删改。
(6)A
评析:数据流图从数据传递和加工的角度,来刻画数据流从输入到输出的移动变换过程。数据流图中的主要图形元素有:加工(转换)、数据流、存储文件(数据源)、源和潭。
(7)D
评析:软件需求分析中需要构造一个完全的系统逻辑模型,理解用户提出的每一功能与性能要求,是用户明确自己的任务。因此,需求分析应确定用户对软件的功能需求和非功能需求。
(8)A
评析:由于数据的集成性使得数据可为多个应用所共享,特别是在网络发达的今天,数据库与网络的结合扩大了数据关系的应用范围。数据的共享自身又可极大地减少数据冗余性,不仅减少了不必要的存储空间,更为重要的是可以避免数据的不一致性。所谓数据的一致性是指在系统中同一数据的不同出现应保持相同的值,而数据的不一致性指的是同一个数据在系统的不同拷贝处有不同的值。
(9)A
评析:在关系数据库中,关系模型采用二维表来表示,简称“表”。二维表是由表框架及表元组组成。在表框架中,按行可以存放数据,每行数据称为元组。
(10)A
评析:数据库设计可分为概念设计与逻辑设计。数据库概念设计的目的是分析数据间内在语义关联,在此基础上建立一个数据的抽象模型。数据库逻辑设计的主要工作是将ER图转换为指定的RDBMS中的关系模型。
(11)B
评析:“工程”菜单中的“部件”选项是用来向工程中添加或删除控件或部件的。
(12)B
评析:InputBox函数在一对话框中显示提示,等待用户输入正文或按下按钮,并返回包含文本框内容的String。所以其返回类型为字符串类型。
(13)C
评析:因为输出格式已经规定为整数部分三位分割,小数部分共两位。所以32548.5的输出样式应该是032,548.50。
(14)A
评析:SetFocus方法用来将焦点移动到指定的控件或窗体。
(15)D
评析:IIf方法根据表达式的值来决定返回其第2和第3个参数中的某一个。表达式是其第1个参数。在本题中a>5为True,所以返回的是-1。
(16)C
评析:焦点只能移到可视的窗体或控件。因为在窗体的Load事件完成前窗体或窗体上的控件是不可视的,所以如果不是在Form_Load事件过程完成之前首先使用Show方法显示窗体的话,是不能使用SetFocus方法将焦点移至正在自己的Load事件中加载的控件上的。
(17)C
评析:当ScrollBar控件上的或包含一个滚动条的对象的滚动框被重新定位,或按水平方向或垂直方向滚动时,Scroll事件发生。
(18)B
评析:ControlBox属性返回或设置一个值,表示在运行时控制菜单框是否在窗体中显示。在运行时为只读。为了显示控制菜单框,还必须将窗体的 BorderStyle 属性值设置为 1(固定单边框),2(可变尺寸)或 3(固定对话框)。
(19)B
评析:Do Until语句是条件为False的时候执行循环体。程序中的循环体只执行了一次,结果是x=4,y=5。最后输出的结果为4。
(20)B
评析:MDIChild属性返回或设置一个值,它表示一个窗体是否被作为MDI子窗体在一个MDI窗体内部显示。在运行时是只读的。
(21)C
评析:当键盘被按下时,输出按下的键所代表的字符,即“A”;当键盘被松开的时候,输出该字符后继字符的后继字符,即“C”。
(22)A
评析:如果使用Open语句打开文件而又未使用For指定打开方式,则默认的方式为Random,即随机模式。
(23)B
评析:Pattern属性返回或设置一个值,该值指示在运行时显示在FileListBox控件中的文件类型。
(24)C
评析:前两个判断条件都不满足,所以真正执行的赋值语句只有最后一句,所以a为30。
(25)C
评析:如果使用Call关键字来调用一个需要参数的过程,参数列argumentlist就必须要加上括号。如果省略了Call关键字,那么也必须要省略argumentlis外面的括号。
(26)D
评析:ReDim语句在过程级别中使用,用于为动态数组变量重新分配存储空间。
(27)A
评析:LTrim、RTrim与Trim函数返回 Variant(String),其中包含指定字符串的拷贝,没有前导空白(LTrim)、尾随空白(RTrim)或前导和尾随空白(Trim)。
(28)D
评析:在Visual Basic中的布尔型数值的名称为Boolean。
(29)D
评析:Interval属性仅应用于Timer控件。返回或设置对Timer控件的计时事件各调用间的毫秒数。
(30)C
评析:CommonDialog控件有6种对话框,分别可以显示“颜色”、“字体”、“帮助”、“打开”、“打印”和“保存”对话框。
(31)C
评析:变量名不能包含标点符号。
(32)C
评析:中断模式是指在开发环境中暂时中止程序的执行。在中断模式下,可以检查、调试、重置、单步执行或继续执行程序。
(33)B
评析:Stretch属性:返回/设置一个值,决定是否调整图形的大小以适应图像控件。Appearance属性:返回/设置一个对象在运行时是否以3D效果显示。图像框控件无Autosize和AutoRedraw属性。
(34)D
评析:菜单项的Visible属性决定其可见与否(true表示可见,false表示不可见)。
(35)A
评析:Path属性适用于目录列表框和文件列表框,用来设置或返回当前驱动器的路径,其格式为:[窗体.]目录列表框.|文件列表框.Path[="路径"];“窗体”是目录列表框所在的窗体,如果省略则为当前窗体。“路径”的格式与DOS下相同,如果省略“=路径”,则显示当前路径。
二、填空题
(1)【1】中序
评析:在先左后右的原则下,根据访问根结点的次序,二叉树的遍历可以分为三种:前序遍历、中序遍历和后序遍历。
前序遍历是指在访问根结点、遍历左子树与遍历右子树这三者中,首先访问根结点,然后遍历左子树,最后遍历右子树;并且遍历左、右子树时,仍然先访问根结点,然后遍历左子树,最后遍历右子树。
中序遍历指在访问根结点、遍历左子树与遍历右子树这三者中,首先遍历左子树,然后访问根结点,最后遍历右子树;并且遍历左、右子树时,仍然先遍历左子树,然后访问根结点,最后遍历右子树。
后序遍历指在访问根结点、遍历左子树与遍历右子树这三者中,首先遍历右子树,然后访问根结点,最后遍历左子树;并且遍历左、右子树时,仍然先遍历右子树,然后访问根结点,最后遍历左子树。
(2)【2】模块化
评析:结构化程序设计方法的主要原则可以概括为自顶向下、逐步求精、模块化和限制使用goto语句。
自顶向下:程序设计时,应先考虑总体,后考虑细节;先考虑全局目标,后考虑局部目标。不要一开始就过多追求众多的细节,先从最上层总目标开始设计,逐步使问题具体化。
逐步求精:对复杂问题,应设计一些子目标作过度,逐步细化。
模块化:一个复杂问题,肯定是由若干稍简单的问题构成。模块化是把程序要解决的总目标分解为分目标,再进一步分解为具体的小目标,把每个小目标称为一个模块。
限制使用goto语句。
(3)【3】测试实例
评析:进行软件测试时,应精心设计测试实例和选择测试数据,以对系统进行全面测试。
(4)【4】概念 或 概念级
评析:数据库系统在其内部具有三级模式及二级映射,三级模式分别是概念级模式、内部级模式和外部级模式。
概念模式是数据库系统中全局数据逻辑结构的描述,是全体用户(应用)公共数据视图。
内模式又称物理模式,它给出了数据库物理存储结构与物理存取方法,如数据存储的文件结构、索引、集簇及hash等存取方式与存取路径,内模式的物理性主要体现在操作系统及文件级上,它还未深入到设备级上(如磁盘及磁盘操作)。
外模式也称子模式或用户模式,它是用户的数据视图,也就是用户所见到的数据模式,它由概念模式推导而出。
(5)【5】数据存储
评析:数据字典是各类数据描述的集合,它通常包括5个部分,即数据项,是数据的最小单位;数据结构,是若干数据项有意义的集合;数据流,可以是数据项,也可以是数据结构,表示某一处理过程的输入或输出;数据存储,处理过程中存取的数据,常常是手工凭证、手工文档或计算机文件;处理过程。
(6)【6】工程 或 .vbp
评析:Visual Basic总是以ASCII格式保存工程文件(.vbp)。工程文件包含了反映工程的设置的项目(包括工程中的窗体和模块、引用、以及为控制编译而选取的各种各样的选项,等等)。当工程文件被装入内存的时候,所有相关的应用程序的信息也就都被装入了内存。
(7)【7】25+32= 57
评析:语法:object.Print [outputlist]
Print方法的语法具有下列对象限定符和部分:
部分 描述
object 必要。对象表达式,其值为“应用于”列表中的对象。
Outputlist 可选。表示要打印的表达式或表达式的列表。如果省略,则打印一空白行。
可以用空白或分号来分隔多个表达式。本题分号后是Print方法的第二个表达式。
(8)【8】Interval
评析:Interval属性返回或设置对Timer控件的计时事件各调用间的毫秒数。语法:object.Interval [= milliseconds]。
(9)【9】10
评析:k从0开始每次加1,当k条件为10时,将不在进入循环,故整个循环执行了10次。
(10)【10】-56
评析: 返回参数的整数部分,其类型和参数相同。
语法
Int(number)
Fix(number)
必要的number参数是Double或任何有效的数值表达式。如果number包含Null,则返回Null。
说明
Int 和 Fix 都会删除 number 的小数部份而返回剩下的整数。
Int 和 Fix 的不同之处在于,如果 number 为负数,则 Int 返回小于或等于 number 的第一个负整数,而 Fix 则会返回大于或等于 number 的第一个负整数。例如,Int 将 -8.4 转换成-9,而 Fix 将-8.4 转换成-8。
(11)【11】9
评析:inc函数每执行一次就向x上累加一次传入的参数,所以最后x的值为:2+3+4=9。
(12)【12】内建 或 下拉式
【13】快捷方式 或 快捷
评析:Visual Basic有两种类型的菜单:内建及快捷方式。
内建菜单即下拉式菜单。内建菜单出现在Visual Basic窗口顶端的菜单栏中,每个菜单名称都会有些相应的命令。举例而言,“格式”菜单包含用来格式化窗体的命令。某些命令具有子菜单,而子菜单又包含一些命令。例如,“视图”菜单上的“工具栏”命令有一个子菜单,它包含工具条的名称及“自定义”命令。您可以使用“自定义”命令去修改内建菜单或在菜单栏中添加命令。快捷方式菜单即弹出式菜单。快捷方式菜单是一个内含经常使用的命令的菜单,当单击鼠标右键或按SHIFT+F10时就会出现。
(13)【14】标准 或 .bas 或 全局
评析:标准模块也称全局模块。标准模块(文件扩展名为.BAS)是应用程序内其他模块访问的过程和声明的容器。它们可以包含变量、常数、类型、外部过程和全局过程的全局(在整个应用程序范围内有效的)声明或模块级声明。
(14)【15】6
评析:只要指定的条件为True,则会重复执行一系列的语句。本题中的循环只能当num的值超过5时才会终止,所以最终的num的值为6。
|