全国计算机等级考试二级VB笔试参考答案带详细解析.docx

上传人:b****8 文档编号:9299046 上传时间:2023-02-04 格式:DOCX 页数:13 大小:66.65KB
下载 相关 举报
全国计算机等级考试二级VB笔试参考答案带详细解析.docx_第1页
第1页 / 共13页
全国计算机等级考试二级VB笔试参考答案带详细解析.docx_第2页
第2页 / 共13页
全国计算机等级考试二级VB笔试参考答案带详细解析.docx_第3页
第3页 / 共13页
全国计算机等级考试二级VB笔试参考答案带详细解析.docx_第4页
第4页 / 共13页
全国计算机等级考试二级VB笔试参考答案带详细解析.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

全国计算机等级考试二级VB笔试参考答案带详细解析.docx

《全国计算机等级考试二级VB笔试参考答案带详细解析.docx》由会员分享,可在线阅读,更多相关《全国计算机等级考试二级VB笔试参考答案带详细解析.docx(13页珍藏版)》请在冰豆网上搜索。

全国计算机等级考试二级VB笔试参考答案带详细解析.docx

全国计算机等级考试二级VB笔试参考答案带详细解析

2012年3月全国计算机等级考试二级笔试试卷解析

一、选择题(每小题2分,共70分)

(1)【解析】队列的存储表示有两种:

一种是基于数组的存储表示,另一种是基于链表的存储表示。

队列的基于数组的存储表示亦称为顺序队列,它是利用一个一维数组作为队列元素的存储结构。

为了充分地利用数组的存储空间,把数组的前端和后端连接起来,形成一个环形的表,称为循环队列。

因此循环队列是队列的一种顺序存储结构。

队列不管采用链式存储结构还是顺序存储结构,它都是线性结构。

循环队列作为队列的特殊情况,它也是线性结构。

循环队列是在队列的基础上,将队列的头和尾接到一起形成一个环状,它给出了数据的逻辑结构在计算机内部的存储形式,因此是一种存储结构。

答案:

B

(2)【解析】栈是一种后进先出(LastInFirstOut)或先进后出(FirstInLastOut)的线性表,它的一端封闭(称为栈底),在另一端进行插入和删除操作,允许插入和删除的一端称为栈顶。

队列(queue)是指允许在一端进行插入、而在另一端进行删除的线性表。

允许插入的一端称为队尾,通常用一个称为尾指针(rear)的指针指向队尾元素,即尾指针总是指向最后被插入的元素;允许删除的一端称为排头(也称为队头),通常也用一个排头指针(front)指向排头元素的前一个位置。

显然,在队列这种数据结构中,最先插入的元素将最先能够被删除,最后插入的元素最后才能被删除。

因此,队列又称为“先进先出”(FirstInFirstOut,FIFO)或“后进后出”(LastInLastOut,LILO)的线性表,它体现了“先来先服务”的原则。

栈与队列都是线性结构。

答案:

D

(3)【解析】设二叉树结点数为n,度为2的结点数为n2,度为1的结点数为n1,度为0(即叶子结点)的结点数为n0。

则有n=n2+n1+n0。

另外,在二叉树中,度为0的结点数是度为2的结点数加1,因此有n0=n2+1。

此题中,n=25,n0=5,则n2=n0-1=5-1=4,因此n1=n-n2-n0=25-4-5=16。

答案:

A

(7)【解析】通常,将软件产品从提出、实现、使用、维护到停止使用甚至退役的过程称为软件生命周期。

任何一个软件产品或软件系统都要经历软件定义、软件开发、软件维护直至被淘汰这样一个全过程。

因此,软件生命周期可分为定义阶段、开发阶段和维护阶段。

定义阶段包括可行性研究和需求分析;开发阶段包括概要设计、详细设计、实现和测试;维护阶段包括使用、维护和退役。

因此软件生命周期—般包括可行性研究和需求分析、设计、实现、测试、交付使用以及维护等活动。

答案:

A

(8)【解析】需求分析阶段的任务是确定待开发软件的功能、性能、数据、界面等要求,从而确定系统的逻辑模型。

需求分析阶段的主要工作包括:

①需求获取:

确定对目标系统的各方面需求;②需求分析:

对获取的需求进行分析和综合,最终给出系统的解决方案和目标系统的逻辑模型;③编写需求规格说明书:

为用户、分析人员和设计人员之间进行交流提供方便。

④需求评审:

对需求分析阶段的工作进行复审,验证需求文档的一致性、可靠性、完善性和有效性。

软件测试属于软件生命周期中的软件开发阶段,不属于需求分析阶段。

软件测试过程一般按4个步骤进行,即单元测试、集成测试、验收测试和系统测试。

答案:

D

(9)【解析】黑盒测试也称为功能测试或数据驱动测试。

黑盒测试是对软件已试验的功能是否满足需求进行测试和验证,它主要根据需求规格说明所规定的功能来设计测试用例,检查程序的功能是否符合它的功能说明,它不考虑程序的内部结构和处理过程。

答案:

B

(10)【解析】软件设计一般分为两步完成,分别是概要设计和详细设计。

系统结构图是概要设计阶段使用的工具,而详细设计(过程设计)常见的工具有:

(1)图形工具:

程序流程图、N-S图(盒图)、PAD(ProblemAnalysisDiagram,问题分析图)

(2)表格工具:

判定表。

(3)语言工具:

PDL(过程设计语言)。

数据流图(DataFlowDiagram,DFD)是需求分析阶段结构化分析的常用工具。

需求分析阶段其他常用的结构化分析工具还有数据字典(DataDictionary,DD)、结构化语言、判定表和判定树等。

答案:

C

(11)答案:

B【解析】变量命名规则:

(1)字母、数字、下划线。

(2)不能使用保留字。

(3)不能以数字开头。

本题中,case是保留字,t-name中是中划线,不是下划线。

x*y中的*不是字母、也不是数字、也不是下划线。

(12)答案:

C

【解析】x是小于10的非负数。

即x大于等于0并且小于10。

A选项和B选项是数学的描述方式,不是VB的描述方式。

“x大于等于0并且小于10”中的“并且”要使用And而不是Or(或者)。

(13答案:

D

【解析】Name属性只能在设计阶段通过属性窗口设置,属于只读属性,不能在程序运行时修改其值。

(14)答案:

D

【解析】Static只能用在过程(窗体模块的过程或标准模块的过程)内部声明静态变量,不能用在窗体模块或标准模块的通用段。

(15)答案:

C

【解析】因为Rnd产生的随机数范围是0~0.999999,Int函数返回不大于其参数值的一个整数,例如Int(8.6)返回8而不是9。

Int(-8.6)返回-9而不是-8。

(16)答案:

D

【解析】Print使用方式为:

Print输出列表。

在语句Printx=x+10中,x=x+10是一个表达式而不是一条语句。

作为表达式,x=x+10的值是“False”,因为在该表达式中,=作为关系运算符使用,而不是作为赋值运算符使用。

此处,=左边的x是5,=右边的值是15,=两边的值不同,所以是False。

只有当x=x+10作为语句时,才先计算=后面的值,然后把计算的值作为=左边的变量的值。

(17)答案:

A

【解析】-2To2指的是-2、-1、0、1、2(共5),0To3指的是0、1、2、3(共4),因此元素个数是5×4=20

(18)答案:

B

(19)答案:

A

【解析】在条件CaseIs<0的情况下,CaseIs<=5,Is>0是错误的。

在条件CaseIs<0的情况下,CaseIs<=5,Is>0只需表示成CaseIs<=5即可。

(20)答案:

D

【解析】InputBox函数的功能是在输入对话框中显示提示(此处为“输入”),等待用户输入文本或单击按钮,并返回文本框内容。

如果用户单击“确定”或按下ENTER,则InputBox函数返回文本框中的内容。

如果用户单击“取消”按钮,则函数返回一个零长度字符串("")。

本题要注意的是InputBox函数返回的是String类型的数据,由于返回零长度字符串(""),所以在窗体上输出空白而不是0。

(21)答案:

B

【解析】因为有OptionBase1语句,因此a

(1)=3,a

(2)=5,a(3)=7,(4)=9。

i

x

a(i)

s=s+a(i)*x

4

1

9

s=0+9*1=9

3

10

7

s=9+7*10=79

2

100

5

s=79+5*100=579

1

1000

3

s=579+3*1000=3579

(22)答案:

D

【解析】Static在过程级别中使用,用于声明变量并分配存储空间。

在整个代码运行期间都能保留使用Static语句声明的变量的值。

本题中,x为Static类型的变量,其初值为0。

第一次单击按钮,x=f(5),调用Function过程,执行f=5+5,Function过程返回值为10,所以x=10。

第二次单击按钮时,x=f(10+5),调用Function过程,执行f=15+15,Function过程返回值为30,所以x=30。

第三次单击按钮时,x=f(30+5),调用Function过程,执行f=35+35,Function过程返回值为70,所以x=70。

窗体上显示70。

(23)答案:

C

【解析】表示该菜单项不显示,应该是

,而不是

(24)答案:

A

【解析】如果工程中有多个窗体,存盘时每个窗体对应一个窗体文件。

所以B错误。

打开一个窗体,其他窗体不会自动关闭,只是成为非活动窗体。

所以C错误。

VB默认第一个窗体是启动窗体,但可以通过工程属性设置其他窗体为启动窗体。

所以D错误。

(25)答案:

A

【解析】注意,通用对话框的FilterIndex属性取值从1开始,不是从0开始。

所以对于语句

CommonDialog1.Filter="All(*.*)|*.*|Word|*.Doc|"

12

在上图中,FilterIndex属性,All(*.*)为1,Word为2。

(26)答案:

B

【解析】定义过程时,如果形参为数组,无需指明数组的长度,但必须把数组的标志(就是一对圆括号)写出。

所以C和D均错误,B正确。

A选项因为在定义过程时形参不是数组,所以是错误的。

(27)答案:

C

【解析】组合框是由一个文本框和列表框组合而成,要获得组合框中输入的数据(即文本框中输入的数据),只需使用组合框的Text属性即可。

(28)答案:

C

【解析】在文本框Text1中原有字符之前输入a,此时文本框Text1的内容变为aDataBase。

对于文本框的Change事件而言,只要文本框的内容发生改变,即触发该事件。

对于Mid(Text1,1,5)而言,其功能是从第1个位置开始,截取5个字符。

Text1的值是字符串“aDataBase”,第1个位置是字符“a”,从“a”开始截取5个,所以结果是“aData”。

(29)答案:

A

【解析】Array函数的功能是为一维数组初始化。

在使用该函数时,要求=左边的数组arr是下面的三种形式之一:

(1)arr不声明直接使用,即arr为Variant类型的变量。

(2)采用Dimarr的声明形式

(3)采用Dimarr()的声明形式

(30)答案:

D

【解析】删除一个元素后,数组中只有9个元素。

由于有OptionBase1,数组下标的下界从1开始,所以最后一个元素的下标是9,而不是10。

(31)答案:

B

【解析】在程序运行时,驱动器列表框(DriveListBox)的Drive属性用来设置或返回选择的驱动器(缺省值是当前驱动器),目录列表框(DirListBox)的Path属性用来设置或返回所选择的目录(缺省值是当前目录),文件列表框(FileListBox)的Path属性用来设置或返回其当前的目录(缺省值是当前路径),

首先A和C可以排除,因为驱动器列表框没有Path属性,所以Drive1.Path的使用是错误的。

驱动器列表框的Drive属性,用来设置或返回所选择的驱动器名。

Drive属性只能用程序代码设置,不能通过属性窗口设置。

其格式为:

驱动器列表框名称.Drive[=驱动器名]

这里的“驱动器名”是指定的驱动器,如果省略,则Drive属性是当前驱动器。

如果所选择的驱动器在当前系统中不存在,则产生错误。

每次重新设置驱动器列表框的Drive属性时,都将引发Change事件。

驱动器列表框与目录列表框有着密切联系。

在一般情况下,改变驱动器列表框中的驱动器名后,目录列表框中的目录应当随之变为该驱动器上的目录,也就是使驱动器列表框和目录列表框产生同步(Synchronize)效果。

这可以通过一个简单的语句来实现。

当改变驱动器列表框的Drive属性时,将产生Change事件。

当Drive属性改变时,Drive_Change事件过程就发生反应。

因此,只要把Drive1.Drive的属性值赋给Dir1.Path,就可产生同步效果。

即:

PrivateSubDrive1_Change()

Dir1.Path=Drive1.Drive

EndSub

这样,每当改变驱动器列表框的Drive属性时,将产生Change事件,目录列表框中的目录变为该驱动器的目录。

综合上面的分析,选项D是错误的。

在实际应用中,驱动器列表框、目录列表框和文件列表框往往需要同步操作,这可以通过Path属性的改变引发Change事件来实现。

例如:

PrivateSubDir1_Change()

File1.Path=Dir1.Path

EndSub

该事件过程使窗体上的目录列表框Dir1和文件列表框File1产生同步。

因为目录列表框Path属性的改变将产生Change事件,所以在Dir1_Change事件过程中,把Dir1.Path赋给File1.Path,就可以产生同步。

因此选项B是正确的。

(32)答案:

A

【解析】要使用弹出式菜单,首先必须通过菜单编辑器建立菜单,该菜单必须包含主菜单项和子菜单项,而且主菜单的“可见”属性必须设置为False,即主菜单必须在程序运行时不可见,然后通过PopupMenu方法进行显示。

可以建立多个弹出式菜单。

综合上面的分析,A是错误的。

(33)答案:

D

【解析】对于Print方法,其使用格式如下:

对象名.Print[表达式列表]

其中,表达式列表要求是“字符串表达式”或“数值表达式”。

对于自定义数据类型的变量a,不能直接打印该变量,必须指出是要打印该变量的哪个成员,即形如a.X或a.Y的方式。

(34)答案:

C

【解析】此题可以使用排除法。

Text1等价于Text1.Text,Text2等价于Text2.Text,所以选项C是错误的。

(35)答案:

C

【解析】对于随机文件的写操作,使用Put语句,其使用格式如下:

Put[#]文件号,[记录号],变量名

其中记录号可以省略,但记录号后面的那个逗号不能省略。

A选项:

用于使用ForInput方式打开的顺序文件,读取文件操作。

D选项:

用于读取操作,而不是保存。

B选项:

用于使用ForOutputt方式或Append方式打开的顺序文件的写操作。

二、填空题(每空2分,共30分)

(1)【解析】线性表采用顺序存储结构时,如果删除运行在线性表的末尾进行,即删除第n个元素,则不需要移动表中的元素(这是最好的情况);如果要删除线性表中的第1个元素,则从第2个元素开始直到最后一个元素(第n个元素),一共n-1个元素,必须依次向前移动一个位置(这是最坏的情况);一般情况下,要删除第i(1≤i≤n)个元素时,则要从第i+1个元素开始,直到第n个元素之间共n-i个元素依次向前移动一个位置;在平均情况下,要在线性表中删除一个元素,需要移动表中一半的元素。

答案:

n-1

(2)【解析】当front<rear时,循环队列中元素的个数为rear-front,当front>rear时,循环队列中元素的个数为N(N为循环队列容量)-front+rear。

此题中front=16>rear=15,因此该循环队列中共有30-16+15=29个元素。

答案:

29

(3)【解析】数据库管理系统一般提供下列几种数据语言(datalanguage),分别是:

①数据定义语言(DataDefinitionLanguage,DDL):

负责数据的模式定义和数据的物理存取构建。

②数据操纵语言(DataManipulationLanguage,DML):

负责数据的操纵,包括查询及增加、删除、修改等操作。

③数据控制语言(DataControlLanguage,DCL):

负责数据完整性、安全性的定义与检查以及并发控制、故障恢复等功能,包括系统初始程序、文件读/写、存取路径管理程序、缓冲区管理程序、安全性控制程序、完整性检查程序、并发控制程序、事务管理程序、运行日志管理程序以及数据库恢复程序等。

答案:

数据操纵语言或DML

(4)答案:

关系

(5)答案:

面向对象方法

(6)【解析】Open语句格式为:

Open文件名For打开方式As文件号

其中,“打开方式”可以是Input、Output、Random等。

Input方式是把顺序文件中的内容读到程序中,Output方式是把程序中的数据写到顺序文件中。

Random方式用于打开随机文件。

Print语句格式为:

Print文件号,变量列表

其功能是把变量列表中的所有变量的值写到由文件号指定的文件中。

本题中,要求把文本框的内容(Text1.Text)写到文件file1.txt中,因此打开方式应该为Output,所以【6】应该填入Output。

由于已经由Open语句将顺序文件“file1.txt”和文件号(此处为1)进行了关联,所以【7】应该填入#1。

答案:

【6】Output【7】#1

【考试误区】注意:

语句“Print#1,Text1.Text”中Print与数字1之间的#不能省略,不能写成“Print1,Text1.Text”,否则,就变成了在窗体上输出数字1和文本框的内容。

但是,Open语句中As子句后面的#则可以省略。

(7)【解析】首先注意到窗体的通用段定义了一个模块级的变量down,类型为Boolean,因此该变量可以被窗体模块中的所有过程使用。

答案:

【8】Button【9】down=True或down【10】Label1.Caption或Label1

(8)答案:

【11】List2.ListIndex【12】List2.AddItemList1.Text

【解析】列表框的RemoveItem方法的功能是删除被选中的列表项,该方法后面的参数是一个整数值,该整数值是被选中的列表项的索引值(取值0~ListCount-1),被选中的列表框的索引值用ListIndex代表。

列表框的AddItem方法的功能是把指定的内容添加到列表框中,该方法的格式如下:

AddItem要添加的内容,[Index]

在vb中,使用属性时,总是要指明该属性是哪个对象的属性,所以【11】要填List2.ListIndex。

程序中,List1.AddItemList2.Text的功能是把列表框List2中被选中的列表项的内容(用List2.Text代表)添加到列表框1中,然后删除列表框2中被选中的这项(选中的这项的索引值用ListIndex代表),所以【11】要填List2.ListIndex。

【12】要填入的是List2.AddItemList1.Text,其功能是把列表框1中选中的列表框(该列表项的内容用List1.Text代表)先添加到列表框2中,然后使用语句List1.RemoveItemList1.ListIndex把列表框1中被选中的列表项删除。

(9)答案:

【13】ch【14】temp【15】True

 

参考答案

一、选择题(每小题2分,共70分)

(1)D

(2)C(3)B(4)A(5)C

(6)D(7)A(8)D(9)B(10)A

(11)B(12)C(13)B(14)D(15)A

(16)B(17)D(18)D(19)C(20)B

(21)B(22)C(23)A(24)A(25)C

(26)D(27)A(28)A(29)C(30)B

(31)C(32)B(33)A(34)A(35)B

二、填空题(每空2分,共30分)

请将每空的正确答案写在答题卡【l】至【15】序号的横线上,答在试卷上不得分。

【1】线性结构

  【2】n

  【3】结构化

  【4】数据库管理系统

  【5】关系

  【6】AutoSize

  【7】Result*x

  【8】m

  【9】t

  【10】m<40或m<=39

  【11】4

  【12】70

  【13】ForAppendAs#1

  【14】"end"

  【15】ct,nt

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1