航空论坛_航空翻译_民航英语翻译_飞行翻译

 找回密码
 注册
搜索
查看: 2290|回复: 1
打印 上一主题 下一主题

2007年4月全国计算机等级考试二级笔试试卷Visual Basic语言程序设计 [复制链接]

Rank: 9Rank: 9Rank: 9

跳转到指定楼层
1#
发表于 2011-9-14 19:56:46 |只看该作者 |倒序浏览
游客,如果您要查看本帖隐藏内容请回复
附件: 你需要登录才可以下载或查看附件。没有帐号?注册

Rank: 9Rank: 9Rank: 9

2#
发表于 2011-9-14 19:57:00 |只看该作者

20074月全国计算机等级考试二级笔试试卷

Visual Basic语言程序设计

(考试时间90分钟,满分100)



20074月全国计算机等级考试二级笔试试卷

Visual Bask语言程序设计

参考答案及评析

一、选择题
(1) B
[评析] 我们通常用时间复杂度和空间复杂度来衡量算法效率,算法的时间复杂度是指执行算法所需要的计算工作量;算法所执行的基本运算次数与问题的规模有关,而一个算法的空间复杂度,一般是指执行这个算法所需要的内存空间;一般来说,一种数据的逻辑结构根据需要可以表示成多种存储结构。
(2) D
[评析] 软件设计中通常采用结构化设计方法,模块的独立程度是评价设计好坏的重要度量标准。耦合性与内聚性是模块独立性的两个定性标准。内聚性是一个模块内部各个元素间彼此结合的紧密程度的度量;耦合性是模块间互相连接的紧密程度的度量。一般较优秀的软件设计,应尽量做到高内聚,低耦合,即减弱模块之间的耦合性和提高模块内的内聚性,有利于提高模块的独立性。
(3) A
[评析] 关于软件测试的目的,Grenford J.Myers在《The Art of Software Testing》一书中给出了深刻的阐述:软件测试是为了发现错误而执行程序的过程。一个好的测试用例是指很可能找到迄今为止尚未发现的错误的用例;一个成功的测试是发现了至今尚未发现的错误的测试。整体来说,软件测试的目的就是尽可能多地发现程序中的错误。
(4) C
[评析] 对象是由数据和容许的操作组成的封装体,与客观实体有直接的对应关系。对象之间通过传递消息互相联系,以模拟现实世界中不同事物彼此之间的联系。面向对象技术有三个重要特性,封装性、继承性和多态性。
(5) D
[评析] 队列是指允许在一端进行插入、而在另一端进行删除的线性表,允许插入的一端称为队尾,允许删除的一端称为队头。它又称为“先进先出”或“后进后出”的线性表,体现了“先来先服务”的原则。
(6) C
[评析] 在“先左后右”的原则下,根据访问根结点的次序,二叉树的遍历可以分为3种:前序遍历、中序遍历和后序遍历。
    前序遍历是指在访问根结点、遍历左子树与遍历右子树这三者中,首先访问根结点,然后遍历左子树,最后遍历右子树;并且遍历左、右子树时,仍然先访问根结点,然后遍历左子树,最后遍历右子树。
(7) A
[评析] 二叉树的性质3:在任意一棵二叉树中,度为0的结点(即叶子结点)总是比度为2的结点多一个。本题中度为2的结点数为n,故叶子结点数为n+1个。
(8) B
[评析] 对关系数据库进行查询时,需要找到用户感兴趣的数据,这就需要对关系进行一定的关系运算。关系的基本运算有两类:一类是传统的集合运算(并、交、差),另一类是专门的关系运算(选择、投影、连接)。集合的并、交、差:设有两个关系RS,它们具有相同的结构,RS的并是由属于RS,或者同时属于RS的所有元组成的集合,记作RSRS的交是由既属于R又属于S的所有元组组成的集合,记作RSRS的差是由属于R但不属于S的所有元组组成的集合,记作R-S
(9) C
[评析] E-R图中用矩形表示实体集,用椭圆表示属性,用菱形表示联系。
(10) A
[评析] 数据库系统具有数据独立性的特点,数据独立性一般分为物理独立性与逻辑独立性两级。物理独立性即是数据的物理结构的改变不影响数据库的逻辑结构;逻辑独立性即数据库总体逻辑结构的改变,不需要相应修改应用程序。所以,在数据系统中,数据的物理结构并不一定与逻辑结构一致。
(11) D
[评析] Dim语句形式为:Dim变量名[As 类型] [As 类型]:方括号部分表示该部分可以缺省。缺省“As类型”部分,则所创建的变量默认为变体类型。为方便定义,可在变量名后加类型符来代替“As类型”。此时变量名与类型符之间不能有空格。一条Dim语句可以同时定义多个变量,但每个变量必须有自己的类型声明,类型声明不能共用,所以选项AC是错误的。 S是定义字符型变量的关键字,选项B定义的是1个整型变量和2个字符串变量,不符合要求。
(12) D
[评析] \”是整除运算符,当x=1x=0时,x\2的结果都是0,所以x\2=O表达式不能判断是否为偶数。
(13) B
[评析] 窗体MyformClick事件过程的过程名是Form_Click,命令按钮C1Click事件过程的过程名是 C1_Click
(14) C
[评析] 滚动条控件(HScroll或者VScroll)的属性和事件有:
MinMax属性:Min属性设置滚动框位于滚动条最左端或者最顶端时Value属性的值。Max属性设置滚动框位于滚动条最右端或者最底端时Value属性的值。
SmallChange属性:设置鼠标单击滚动箭头时滚动框移动的大小。
LargeChange属性:设置鼠标单击滚动箭头和滚动框之间的区域时,滚动框的移动大小。
(15) B
[评析] Option Base 0表示数组的下标是从0开始的。选项A和选项D不符合题意。选项B声明了一个整型的二维数组a,第一维下标范围是03,第二维下标范围是02,存放14×3矩阵。选项C声明了一个整型的二维数组a,第一维下标范围是04,第二维下标范围是03,存放一个5×4矩阵。
(16) A
[评析] PasswordChar属性:返回或设置一个值,该值指示所键入的字符或占位符在TextBox控件中是否要显示出来。
(17) B
[评析] 在组合框控件中,RemoveItem方法是用来删除控件中的项目的,其表达式为:object.RemoveItem index。其中,0indexComboBox.ListCount-1ListCount属性表示组合框中项目的数量。ListCount-1表示组合框中最后一项的序号。
(18) A
[评析] Show方法用来显示一个窗体。格式:窗体名称.Show[模式],参数“模式”用来确定显示窗体的状态,可以取值01。取值为0(0值是缺省值)则窗体是“无模式”窗体,当该窗体显示出来时,不但可以对该窗体进行操作,还可以对其他显示出来的窗体进行操作:取值为1则窗体是“模式”窗体,当该窗体显示出来时,只能对该窗体进行操作,只有当该窗体关闭后,才能对其他窗体进行操作。
(19) D
[评析] 控件数组是由一组相同类型的控件组成。它们共用一个控件名,具有相同的属性。当建立控件数组时,系统给每个元素赋一个惟一的索引号(Index),通过属性窗口的Index属性,可以知道该控件的下标是多少,第1个下标是0
控件数组适用于若干个控件执行的操作相似的场合,控件数组共享同样的事件过程。本题中的事件过程是通过Index确定用户按了哪个按钮。
(20) C[评析] WhileWend是先判断条件表达式的值是否为True,如果为True,则执行循环体,如果为False,则执行Wend后面的语句。
Do WhileLoop是先判断条件表达式的值是否为True,如果为True,则执行循环体,如果为False,则执行 Loop后面的语句。
DoLoop Until是先执行循环体,再判断条件表达式,如果表达式的值为True,则执行Loop后而的语句,如果为False,则继续执行循环体。

Do Until
Loop是先判断循环条件后执行循环体,而用Until关键字表示当循环条件为False时执行循环体,直到条件为True时终止循环。
(21) A
[评析] 通用对话框的Action属性决定打开何种类型的对话框。1——Open:打开文件对话框;2——Save As:另存为对话框。除了Action属性,VB还提供了一组方法用来打开通用对话框。ShowOpen:打开对话框, ShowSave:另存为对话框。
(22) B
[评析] 每个菜单项都是一个控件,与其他控件一样也有自己的属性与事件,每个菜单项的名称足不相同的。
(23) D[评析] Visual Basic中,可以直接使用过程名调用过程,也可以结合Call关键字调用。使用Call调用过程时,参数列表必须用圆括号括起。其形式为:
    子过程名 [参数列表]

Call
子过程名 ([参数列表])
(24) C
[评析] Left属性是用来指定控件左边缘的位置。选项A是设置Text1的左边距是100,选项B是每单击命令按钮一次,文本框向左移动一定距离。
Move是用来移动窗体或控件,并可改变其大小。形式为:[对象].Move左边距离[,上边距离[,宽度[,高度]]]。左边距离、上边距离、宽度、高度:如果对象是窗体,则“左边距离”和“上边距离”以屏幕左边界和上边界为准,否则以窗体的左边界和上边界为准,宽度和高度表示可改变大小。选项C是每单击命令按钮一次,文本框向右移动一定距离。选项D是每单击命令按钮一次,文本框不会移动。
(25) A
[评析] 在程序运行过程中,首先执行的对象被称为启动对象。缺省情况下,第一个创建的窗体被指定为启动对象,即启动窗体。如果要指定其他窗体为启动窗体,应在“工程-属性”对话框中可以指定工程的启动对象。
(26) C
[评析] 打开文件的命令是Open,其常用形式为Open“文件名”For 模式 As[#]文件号 [Len=记录长度],模式为以下形式之一:
Output:打开一个文件,将对该文件进行写操作。 Inout:打开一个文件,将对该文件进行读操作。 Append:打开一个文件,将在该文件末尾追加记录。如果未指定方式,则以Random访问方式打开文件。
(27) D
[评析] 根据题面中循环的意思是先将1赋给k,总和s初始化为0,这样在循环体内就需要先计算总和,再将循环变量k的值加2,再继续循环。
(28) D
[评析] DoLoop Until是先执行循环体,再判断条件表达式,如果表达式的值为True,则执行Loop后面的语句,如果为False,则继续执行循环体。在此题中,“偶数加1”与“奇数加2”都不可能等于1000,所以循环的条件不可能成立,输入任何整数都会出现死循环。
(29) B[评析] ShowOpen方法为显示“打开”对话框。Input:打开一个文件,将对该文件进行读操作。算法2中的条件表达式是判断选择或输入的文件名是否为空,如果为空则不执行Then后的语句,所以显示打开文件对话框后若未选择或输入任何文件名,则算法2不会出错,算法1会出错。
(30) C
[评析] InStr([首字符位置]字符串1,字符串2[,n])用来在“字符串1”中查找“字符串2”,如果找到,则返回“字符串2”的第一个字符在“字符串广中的位置。ListCount属性表示组合框中项目的数量。ListCount-1表示组合框中最后一项的序号。程序中循环变量的初值是列表框中的最后一个项目,终值是列表框中的第一个项目,此循环的作用是从列表框的最后一个项目到第一个项目中,找出列表框项目中包含“京”的项目,并将内容显示在Text2中。
(31) B[评析] Mid(字符串,p,n):从第p个字符开始,向后截取n个字符。pn都是算术表达式。“+”:字符串连接运算符,将两个字符串按顺序连接起来。Len(string):返回String字符串内字符的数日,或是存储一变量所需的字节数。此函数过程中stlen=7,循环的次数是3,第一次循环得到temp的值是AG,第二次循环得到temp的值是AGBF,第三次循环得到temp的值是AGBFCE
(32) C
[评析] DragMode属性:用来设置自动或手动拖放模式:缺省值为0(手动方式)。为了让控件自动执行拖放操作,必须把它的属性设为1,该属性即可以在属性窗口中设置,也可以在程序中设置。
拖动意味着移动光标到对象上,按住鼠标,接着移动鼠标使对象在屏幕内滑动以重新定位对象。当释放鼠标按钮时,在拖动对象所在控件边界内放开鼠标会触发DragDrop事件。如果放开鼠标时对象不在一个控件的上面,那么对象定位于窗体本身。
如果一个对象在一个控件(或窗体)上被放开,并且在后者的DragDrop事件中没有放任何内容,那么“被放开”的对象将仍然在窗体上原先位置出现,不会出现其他事情。因此,拖动对象的DragDrop事件不是用来存放有关放开对象时执行某些指令的地方。而应将这些指令放到背景的DragDrop事件中或者拖动对象所放开的目标控件中。
一个DragDrop事件提供三条信息——DragDrop(Source as Comro1,X as Single,Y as Single)Soume,是已经放开的图片、图标或控件。XY值,是放开事件所在目标对象的水平和垂直方向位置。
(33) A
[评析] 本题是先定义一个55列的整型数组,再给数组元素赋值,最后再求数组矩阵中反对角线上的数据元素之和。“\”是整除运算符。
(34) D
[评析] 本题要求的条件是0100,那么条件表达式应该是a=0 And a=100If语句的执行方式是当“条件”为真的时候,执行Then后面的语句;“条件”为假,执行Else后面的语句。
(35) A
[评析] 过程Command2_Click()中用了一个If语句的嵌套,If语句的条件是第1行或第n行或第1列或第n列,所以说是计算矩阵外围一圈元素的累加和。
二、填空题
(1) 63
[评析] 所谓满二叉树是指这样一种二叉树:除最后一层外,每层上的所有结点都有两个子结点。这就是说,在满二叉树中,每一层上的结点数都达到最大值,即在满二叉树的第K层上有2K-1个结点,且深度为m的满二叉树有2m-1个结点。在满二叉树中,最后一层的结点个数就是叶子结点的个数,本题中深度为7,故叶子结点数为27-1=127,且第七层的叶子结点数为27-1=64。由二叉树的性质3:在任意一棵二叉树中,度为0的结点(即叶子结点)总是比度为2的结点多一个,可知:本题中度为2的结点数为127-64=63个。
(2) 黑箱()
[评析] 软件测试的方法有3种:动态测试、静态测试和正确性证明。设计测试实例的方法一般有两类:黑盒测试方法和白盒测试方法。黑盒测试方法主要有:等价类划分法、边界值分析法、错误推测法、因果图等,主要用于软件确认测试。
(3) 数据库管理系统
[评析] 数据库管理系统是数据库的机构,它是一种系统软件,负责数据库中的数据组织、数据操纵、数据维护、控制及保护和数据服务等。数据库管理系统是数据库系统的核心。
(4) 开发
[评析] 软件生命周期分为软件定义、软件开发及软件运行维护3个阶段。本题中软件编码和软件测试都属于软件开发阶段;维护是软件生命周期的最后一个阶段,也是持续时间最长,花费代价最大的一个阶段,软件工程学的一个目的就是提高软件的可维护性,降低维护的代价。
(5) 数据字典
[评析] 数据字典是结构化分析方法的核心。数据字典是对所有与系统相关的数据元素的一个有组织的列表,以及精确的、严格的定义,使得用户和系统分析员对于输入、输出、存储成分和中间计算结果有共同的理解。数据字典把不同的需求文档和分析模型紧密地结合在一起,与各模型的图形表示配合,能清楚地表达数据处理的要求。概括地说。数据字典的作用是对DFD中出现的被命名的图形元素的确切解释。
(6) [6] 0

[7] n-1

[评析] Do WhileLoop是先判断条件表达式的值是否为True,如果为True,则执行循环体,如果为False,则执行Loop后面的语句。由循环体可知该题的第1空应该填0。当循环条件不满足时跳出循环,此时的n是满足不等式1+22+32+42++n2=m的最小的n,所以该题的第2空应该填n-1
(7) [8] #2

[9] 1


[10] 0


[11] outchar

[评析] Open语句的基本语法是Open "文件名"(可包含路径)For 模式 As 文件号 [Len=记录长度]。模式为以下形式之一:
Output:打开一个文件,将对该文件进行写操作。
Input:打开一个文件,将对该文件进行读操作。
Append:打开一个文件,将在该文件末尾追加记录。
如果未指定方式,则以Random访问方式打开文件。
文件号是一个介于1511之间的整数。当打开一个文件并为它指定一个文件号后,该文件号就代表该文件,直到文件被关闭后,此文件才可以再被其他文件使用。由“Print #2,
11  ”可知,该题的第1空应该填#2 LOF函数是用来返回已打开文件的长度。将#1文件的长度作为循环变量,所以该题的第2空应该填1
Input$(读取的字符数,#文件号):该函数可以读取指定数目的字符。Mid(s,index,length)用来从字符串s中的第 index字符开始连续取出length个字符。InStr([首字符位置]字符串1,字符串2[,n])用来在“字符串1”中查找“字符串2”,如果找到,则返回“字符串2”的第一个字符在“字符串1”中的位置。“&”:字符串连接运算符,将两个字符串按顺序连接起来。For循环的作用是将#1文件中出现过的字符不重复地连接起来(即若同一字符出现多次,则只保留一个)赋给outchar变量,所以该题的第3空应该填0
将数据写入磁盘文件所用的命令是Write #Print #命令,形式为Print #文件号,[输出列表]。由程序可知是将字符串变量outchar中的内容写到#2文件中,所以该题的第4空应该填outchar
(8) [12] Op1_Click

[13] 3


[14] Caption

[评析] 本题是要求鼠标单击哪个单选按钮,则Text1中显示相应季度的销售总额,所以该题的第1空应该填 Op1 Click。一年有十二个月,分四个季度,每3个月是1个季度,所以该题的第2空应该填3Caption属性表示控件中显示的内容,所以该题的第3空应该填Caption
(9) 4
[评析] 所谓素数就是指只能被1和其本身整除,不能被其他任何数整除的数。本题函数中是先将a2比较,小于2的返回False,大于2的返回True。再用Do WhileLoop循环判断大于4的数是否为素数,所以非素数4就被错判为素数了。如果将程序修改正确,那么循环的条件需要修改为k=a/2 And isprime

使用道具 举报

您需要登录后才可以回帖 登录 | 注册


Archiver|航空论坛 ( 渝ICP备10008336号 )

GMT+8, 2024-4-27 11:26 , Processed in 0.031200 second(s), 12 queries .

Powered by Discuz! X2

© 2001-2011 MinHang.CC.

回顶部