XX年月计算机等级考试二级_VB笔试真题及答案.doc_第1页
XX年月计算机等级考试二级_VB笔试真题及答案.doc_第2页
XX年月计算机等级考试二级_VB笔试真题及答案.doc_第3页
XX年月计算机等级考试二级_VB笔试真题及答案.doc_第4页
XX年月计算机等级考试二级_VB笔试真题及答案.doc_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、2006年9月二级 VisualBasic程序设计笔试试卷及答案一、单项选择(1)下列选项中不符合良好程序设计风格的是_ 。A) ) 源程序要文档化 B)数据说明的次序要规范化C) )避免滥用 goto 语句 D) 模块设计要保证高耦合、高内聚(2)从工程管理角度,软件设计一般分为两步完成,它们是_ 。A) ) 概要设计与详细设计 B) 数据设计与接口设计C) )软件结构设计与数据设计D)过程设计与数据设计(3)下列选项中不属于软件生命周期开发阶段任务的是_ 。A) ) 软件测试B) 概要设计C)软件维护D)详细设计(4)在数据库系统中,用户所见的数据模式为_ 。A) ) 概念模式B) 外模式

2、C)内模式 D) 物理模式(5)数据库设计的四个阶段是:需求分析、概念设计、逻辑设计和_ 。A) ) 编码设计B) 测试阶段 C)运行阶段D) 物理设计(6)设有如下三个关系表:下列操作中正确的是_ 。(7)下列叙述中正确的是_ 。A) ) 一个算法的空间复杂度大,则其空间复杂度也必定大B) ) 一个算法的空间复杂度大,则其时间复杂度必定小C) )一个算法的时间复杂度大,则其空间复杂度必定小D) ) 上述三种说法都不对(8)在长度为 64的有序线性表中进行顺序查找,最坏情况下需要比较的次数为_ 。A)63 B)64C)6D)7(9)数据库技术的根本目标是要解决数据的_ 。A) ) 存储问题B)

3、 共享问题C)安全问题D) 保护问题(10)对下列二叉树:进行中序遍历的结果是_。A) ) ACBDFEG B) ACBDFGEC) ABDCGEFD) FCADBEG(11)以下叙述中正确的是_。A) ) 窗体的 Name 属性指定窗体的名称,用来标识一个窗体B) ) 窗体的 Name 属性值是显示在窗体标题栏中文本C) )可以在运行期间改变窗体的 Name 属性的值D) ) 窗体的 Name 属性值可以为空(12)以下叙述中错误的是_ 。A) ) 打开一个工程文件时,系统自动装入与该工程有关的窗体文件B) ) 保存 Visual Basic 程序时,应分别保存窗体文件及工程文件C) ) V

4、isual Basic 应用程序只能以解释方式执行D) ) 窗体文件包含该窗体及其控件的属性(13)设 a=2,b=3,c=4, 下列表达式的值是_ 。Not a = c Or 4*c = b2 And b a+cA) ) -1B) 1C) TrueD) False(14)没有如下的用户定义类型:Type Studentnumber As Stringname As StringA) ge AS IntegerEnd Type则以下正确引用该类型成员的代码是_。A) ) Student. name=李明“”B) Dim s As StudentC) ) Dim s As Type Studen

5、tD) Dim s As TypeS.name=“李明 ”=李明“15)设 a=5,b=6,c=7,d=8 ,执行下列语句后,X 的值为X=IIf (ab)And(cd),10,20)A) 10B) 20C) TrueD) False(16)执行以下程序段后,变量c$ 的值为_ 。A) $=“ Visual Bassic Programming”B) $=“ Quick”_。e$=b$&U Case(Mid$(a$,7,6)&Right$(a$,12)A) ) Visual Basic ProgrammingB) Quick Basic programmingC) ) Quick

6、Basic ProgrammingD) Quick Basic Programming(17) 在窗体上画一个文本框(其名称为 Textl) 和一个标签(其名称为 Labell) ,程序运行后,如果在文本框中输入指定的信息,则立即在标签中显示相同的内容,以下可以实现上述操作的事件过程是_ 。A) ) Private Sub Textl_Click()B)Private Sub Text1_Change()Labell.Caption=Textl.Text Labell.Caption=Textl.TextEnd SubEnd SubC) ) Private Sub Labell_Ctrange

7、()D) Private Sub Labell_Click()Labell. Caption=Textl.Text Labell.Caption=Textl.TextEnd SubEnd Sub(18)在窗体上面画一个命令按钮和一个标签,其名称分别为Commandl和Labell,然后编写如下事件过程:Private Sub Commandl_Click()Counter=0For i=1 To 4For j=6 To 1 Step -2Counter=Counter+1NextjNextiLabell.Caption=Str(Counter)End Sub程序运行后,单击命令按钮,标签中显示

8、的内容是A)11B) 12C) 16D) 20(19)在窗体上画一个名称为Text1的文本框和一个名称为Commandl的命令按钮,然后编写如下事件过程:Private Commandl_Click()Dim i As Integer, n As IntegerFori=0 To 50i = i+3n = n+1If i10Then Exit ForNextTextl.Text=Str(n)End Sub程序运行后,单击命命令按钮,在文本框中显示的值是_ 。A)5B)4C)3D)2(20)在窗体上画一个命令按钮和两个标签,真名和分别为Commandl 、 Labell 和 Labe12 ,然后

9、编写如下事件过程:PrivateSub1 2 3B)123C)123D)123A)Commandl_Chick.)A) =0)&For i=1 To 10246345258456a=a+1b=0369456369789Forj=1 To 10a=a+1b=b+2NextjNext iLabell. Caption=Str(a)Labe12.Caption=Str(b)End Sub程序运行后,单击命令按钮,在标签Labell 和 Labe12 中显示的内容分别为_ 。A)10和 20 B) 20 和 110 C) 200和 110 D) 110 和 20(21)在窗体上画一个名称为Listl

10、的列表框,一个名称为Labell 的标签,列表框中显示若干城市的名称。当单击列表框中的某个城市名时,该城市名从列表框中消失,并在标签中显示出来。下列能正确实现上述操作的程序是_。A) ) Privale Sub Listl_Click()B) Private Sub Listl_Click()Labell. Caption=Listl. ListIndexLabell.Name=Listl. ListIndexListl. Removeltem Listl.TextListl.RemoveItem Listl.TextEnd Sub End SubC) ) Private Sub Listl_

11、Click()D) Private Sub Listl_Click()Labell. Caption=Listl.TextLabell. Name=Listl. TextListl. RemovItem Listl. ListIndex Listl. RemoveItem Listl. ListIndex End Sub End Sub(22) 在窗体上画一个名称为 Commandl 的命令按钮,然后编写如下程序:Private Sub Commandl Click()Dim i As Integer, j As IntegerDim a (10,10)As IntegerFor i=1 To

12、 3For j= i To 3a(i,j)=(i-1)*3+jPrint a (i,j);Next jPrintNext iEnd Sub程序运行后,单击命令按钮,窗体上显示的是_ 。(23) 在窗体上画一个命令按钮,名称为Option Base 0Private Sub Command1_Click()Command1,然后编写如下代码:D) im A (4)As Integer,B(4) As Integer For k=0 To 2A(k+1)=InputBox( “请输入一个整数 ” ) B(3-k)=A(k+1)Next k Print B(k) End Sub程序运行后,单击命令按

13、钮,在输入对话框中分别输入2 、 4 、 6 ,输入结果为_ 。A)0B)2C)3D)4(24)有以下程序:Option Base 1D) im arr() As IntegerPrivate Sub Form_Click()D) im i As Integer,j As IntegerReDim arr(3,2)For i=1 To 3For j=1 To 2arr (i,j)=i*2+jNext jNext iReDim Preserve arr(1,4)For j=3 To 4A) rr(3,j)=j+9Next jPrint arr(3,2);arr(3,4)End Sub程序运行后,

14、单击窗体,输出结果为_。A) )813B) 013C)712D)00(25)以下叙述中正确的是_ 。A) ) 一个 Sub 过程至少要一个 Exit Sub 语句B) ) 一个 Sub 过程必须有一个 End Sub 语句C) )可以在 Sub 过程中定义一个 Function 过程,但不能定义 Sub 过程D) ) 调用一个 Function 过程可以获得多个返回值(26)有以下程序:Sub subp(b()As Integer)For i=1To4B) (i)=2-iNextiEnd SubPrivate Sub Command1_Click()D) im a (1 To 4)As Int

15、egerA) (1)=5A) (2)=6A) (3)=7A) (4)=8subpa() For i=1 To4 Print a (i) Next iEnd Sub运行上面的程序,单击命令按钮,输出结果为_ 。A)2468B、5 678C 、 10121416 D 、出错(27)设有如下通用过程:Public Function Fun(xStr As String)D) im tStr As String, srtL As IntegertStr+”strL=Len(xStr)i=1D) o While i=strL/2tStr=tStr &Mid(xStr,i ,1)& Mid (xStr ,

16、strL-i+1,1)i=i+1LoopFun=tStrEnd Function在窗体上画一个名称为Textl 的文本框和一个名称为Command1 的命令按钮,然后编写如下的事件过程:Private Sub Command 1_ Click()Dim S1 As StringS1=” abcdef ”Text1.Text=UCase(Fun(S1)End Sub程序运行后,单击命令按钮,则Text1 中显示的是_ 。A) ) ABCDEF B) abcdef C) AFBECDD) DEFABC(28)在窗体上画一个名称为TxtA 的文本框,然后编写如下的事件过程:Private Sub T

17、xtA_KeyPress(KeyAscii As Integer)End Sub假定焦点已经位一地文本框中,则能够触发KeyPress 事件的操作是A) ) 单击鼠标B) 双击文本框C) )鼠标滑过文本框 D)按下键盘上的某个键(29)在窗体上画一个命令按钮和两上文体,其名称分别为Command1 、 Text1 和 Text2 ,然后编写如下程序:D) im S1 As String, S2 As String Private Sub Form_Load()Text1. Text=”Text2. Text=”End SubPrivate Sub Text1_KeyDown(KeyCode A

18、s Integer, Shift As Integer)S2=s2 & Chr(KeyCode)End SubPrivate Sub Text1_KeyPress(KeyAscii As Integer)S1=S1 & chr(KeyAscii)End SubPrivate Sub Command1_Click()Text1.Text=S2Text2.Text=S1S1= “”S2=“”End Sub程序运行后,在Text1中输入 “abc ,”然后单击命令按钮,在文本框Text1和Text2中显示的内容分别为_。A) abc 和 ABCB 、 abc 和 abcC 、 ABC 和 abc D

19、 、 ABC 和(30)以下说法正确的是_ 。ABCA) 任何时候都可以通过执行 “工具 ”菜单中的 “菜单编辑器 ”命令打开菜单编辑器B) 只有当某个窗体为当前活动窗体时,才能打开菜单编辑器C)任何时候都可以通过单击标准工具栏上的“菜单编辑器 ”按钮打开菜单编辑器D) 只有当代码窗品为当前活动窗口时,才能找开菜单编辑器(31)在窗体上画一个通用对话框,其名称为CommonDialog1 ,然后画一个命令按钮,并编写如下事件过程:Private Sub Command1_Click()CommonDialog1. Filter=” All Files(*.*)|*.*Text Files“ (

20、*.txt)|*.txt| Executable Files(*.exe)|*.exe” &_CommonDialog1. Filterindex=3CommonDialog1. Show OpenMsgBox CommonDialog1. FileNameEnd Sub程序运行后,单击命令按钮,将显示一个“打开 ”对话框,此时在 “文件类型 ”框中显示的是_ 。A) All Files(*.*)B) Text files(*.txt)C) Executable Files(*.ext)D)不确定(32)以下叙述错误的是A) 一个工程中可以包含多个窗体文件B) 在一个窗体文件中用 Public

21、 定义的通用过程不能被其他窗体调用C) 窗体和标准模块需要分别保存为不同类型的磁盘文件D)二、填空题(每空2 分,共 30 分)请将每空的正确答案写在答题卡【1 】 【 15 】序号的横线上,答在试卷上不得分。下列软件系统结构图的宽度为【1 】。【 2 】的任务是诊断和改正程序中的错误。一个关系表的行称为【 3 】。按 “先进后出 ”原则组织数据的数据结构是【4 】。数据结构分为线性结构和非线性结构,带链的队列属于【5 】。描述 X 是小于 100 的非负整数 的 Visual Basic 表达式是【6 】。在窗体上有一个名称为Command1 的命令按钮和一个名称为Text1 的文本框。程序

22、运行后,Command1 为禁用(灰色),此时如果在文本框中输入字符,则命令按钮Command1 变为可用。请填空。Private Sub Form_Load()C) Ommand1 Enabled=False End SubPrivate Sub Text1_ 【 7 】 ()C) ommand1 Enabled=True End Sub在窗体上画一个名称为Command1 的命令按钮,然后编写如下事件过程:Private Sub Command1_Click()D) Im a As StringA) =123456789 For i=1 To 5Print Space(6-i);Mid $

23、 (a, 【 8 】 ,2*i-1) Next iEnd Sub程序运行后,单击命令按钮,窗体上的输出结果是5456345672345678123456789请填空。9以下程序的功能是: 将一维组A 中的要求把A(1)到 A(10)依次赋给A(20)依次赋给B(2,1)到依次赋给B(10,100 个元素分别赋给二维数组B 的每个元素并打印出来,B(1,1)到B(1,10),把A(11)到B(2,10), ,把A(91)到 A(100)1 )到 B ( 10 , 10 )。请填空。Option Base 1Private Sub Form_Click()D) im i As Integer,j

24、As IntegerD) im A(1 To 100) As IntegerD) im B(1 To 10,1 To 10) As Integer For i=1 To 100A) (i)=Int(Rnd * 100) Next iFor i=1 To 【 9 】For j=1 To 【 10 】B) (i,j)=【 11 】Print B(i,j);Next jPrintNext iEnd Sub在窗体上画一个名称为Combo1 的组合框,然后画两个名称分别为Label1 、 Label2 ,标题分别为 城市名称 和空白的标签。程序运行后,在组合框中输入一个新项目并按回车键,如果输入的项目在

25、组合框的列表中不存在,则自动将其添加到组合框的列表中,并在Label2 中给出提示已成功添加新输入页。 ,如图所示。如果输入的项目已存在,则在Label2中给出提示 输入项已在组合框中。 。请填空。Private Sub Combol_KeyPress(KeyAscii As Integer)If KeyAscii=13 ThenFor i=0 To Combo1ListCount-1If Combo1Text= 【 12 】 Then输入项已在组合框中。Exit SubEnd IfNext i已成功添加新输入项。C) ombo1 【 13 】 Combo1 Text End IfEnd Su

26、b11 在窗体上画一个命令按钮和一个文本框, 其名称分别为 Command1 和 Text1 ,然后编写如下事件过程:Private Sub Command1_Click()D) im inData As String Text1 Text= OPen d:| ML ) |Myfiletxt forD) o While 【 15 】Input # 1,inDataText1Text=Text1Text+inDataLoopC) lose #1End Sub【14 】As #1程序的功能是,打开D 盘根目录下的文本文件读取它的全部内容并显示在文本框中。请填空2006年9月全国计算机等级考试二级V

27、B语言笔试答案一、选择题解析:模块设计要保证低耦合,高内聚。解析:从技术观点来看,软件设计包括软件结构设计、数据设计、接口设计、过程设计。从工程管理角度,软件设计分为两步完成:概要设计和详细设计。解析:软件维护属于软件生命周期的维护阶段。解析:外模式是用户的数据视图,就是用户所见到的数据模式。5D6C7D8B9B10A解析:窗体的Caption 属性值是显示在窗体标题栏中的文本;窗体的Name 属性是只读属性,即只可以通过属性窗口改变属性值,在运行时能改变;Name 属性值不能为空。解析:在 Visual Basic 环境中,程序可以用解释方式运行, 也可以生成可执行文件运行。解析:此题考察的

28、是运算符的优先级别。根据表达式的执行顺序和运算符的优先级别,原式可以写成:( Not(a=c) ) Or (4 * c)=(b 2) AnD (b(a+c)我们可以在计算机上用以下代码运行验证:Private Sub Form_Click()a=2b=3c=4Print (Not a = c Or 4 * c=b 2 AnD b a+c)EnD Sub14B 解析:题目中所给出的是用户自定义类型,在这里要注意新类型的名称是StuDent ,所以选项 C 、 D 均不正确;我们知道对于类型成员的引用是:对象、属性(方法),所以 A 不正确。15D 解析: IIf(expr,truepart,fa

29、lsepart) 根据表达式的值, 来返回两部分中的其中一个; 由于表达式的条件部分运算结果为 “ True AnD False,所”以无法判断返回值,输出结果为False 。我们可以在计算机上用以下代码运行验证:Private Sub Form_Click()a=5b=6c=7D=8Print x=IIf(ab) AnD (cEnD Sub解析:MiD(string,start, length)返回 Variant (String), 其中包含字符串指定数量的字符;Right (string, length) 返回 Variant (String) ,其中包含从字符串右边取出的指定数量的字符

30、;UCase(String) 返回 Variant (String) ,其中包含转成大写的字符串;我们可以在计算机上用以下代码运行验证:Private Sub Form_Click()a$=Visual Basic Programmingb$=QuickPrint b$ & UCase (MiD$ (a$,7,6) & Right$(a$,12)EnD Sub解析:此题考察的是控键的常用事件;Change 事件在用户向文本框中输入新信息,或当程序把Text 属性设置为新值从而改变文本框的Text 属性时触发,用户每键入一个字符,会引发一次该事件;Click 事件是用户鼠标单击文本框时触发;解析

31、:此题考察的是循环的嵌套,Counter的初始值为0 ,当I=1时,进入内层循环,内层循环语句执行完毕后,Counter的值为3 ;当 I=2 时,进入内层循环时,以此类推,程序全部执行完毕,Counter 的值仍为Counter 的值为3 ,内层循环语句执行完毕后,12 。Counter的值为6 ;解析:在此题中要注意Exit For 语句,该语句是跳出循环体,变量由于循环跳出的条件是I10 ,而 I 的步长为3 ,所以循环只执行了3n次。记录循环执行次数。解析:此题考察的仍然是循环的嵌套,要注意变量a 和b 的变化时机。解析:列表框的Text属性值为最后一次选中的表项的文本;列表框的Lis

32、t InDex属性是已选中的表项的位置。解析: A ( 0 ) =2,A(1)=4,A(2)=6;B(2)=A(0)=2,B(1)=A(1)=4,B(0)=A(2)=6。解析:此题考察的是动态数组,在通用中定义的数组,我们并没有给它界定范围,也没有赋初值,在过程中用 ReDim 语句具体定义数组,此题中要分清两个数组的界限。解析:在Sub 过程定义中Exit Sub 语句是可选的,但不是必需的,是否需要要根据情况而定;在 Sub 过程内,不能定义 Sub 过程或 Function 过程,且 Sub 过程不能嵌套; Founction 过程只能返回一个值。解析: Sub 过程的调用,注意变量的作

33、用域:Dim a(1 To 4) As Integera(1)=5a(2)=6a(3)=7a(4)=8语句是在过程内部定义的,属于局部变量,只在定义它的过程中使用,所以运行结果不受以上程序段的影响。解析: Len(string | varname) 返回 Long, 其中包含字符串内字符的数目,或是存储一变量所需的字节数;解析:KeyPress 事件是在压下键盘上的某个键时触发。解析: Chr(charcoDe) 返回 String ,其中包含有与指定的字符代码相关的字符。控件的KeyPress 事件的KeyAscii参数是所按键的ASCII码;控件的KeyDown事件的KeyCoDe是按键的

34、实际的ASCII码,该码以 “键 ”为主,而不是以 “字符 ”为准。解析:文件对话框的Filter 属性用来指定在对话框中显示的文件类型;文件对话框的FilterInDex 属性用来指定默认的过滤器,注意FilterInDex 属性的最小值为1 。解析:用 Public 短语定义的通用过程是公有过程,可以在程序的任何地方调用。如果当前窗体要调用其他窗体中的公有过程,要加上那个窗体的窗体名作为前缀。解析:当在一个 Dim 语句中定义多个变量时,每个变量都要用 As 子句声明其类型,否则该变量被看作变体类型。解析:随机文件的记录是定长记录。二、填空题【 1 】 3解析:在程序结构图的有关术语中,

35、宽度的概念是: 整体控制跨度, 即各层中所含的模块数的最大值,由图可得此软件系统结构图的宽度为3 。【 2 】程序调试解析:在完成对程序的测试之后将进行程序调试。程序调试的任务是诊断和改正程序中的错误。【 3 】元组解析:在关系中,水平方向的行称为元组,垂直方向的列称为属性,每一列有一个属性名。【4】栈解析:栈是限定只在一端进行插入和删除操作的线性表,通常称插入、删除的这一端为栈顶,另一端为栈底。栈按照 “先进后出 ”或“后进先出 ”的原则组织数据。【 5 】线性结构解析:与栈类似,队列也是线性表,可以采用链式存储结构。所以带链的队列属于线性结构。6【 6 】 X =0 anD X 100解析

36、:可以用类型声明符声明变量类型,下面是常用类型及其类型说明符:整塑浮点数! 双精度浮点数# 货币型 字符串型$长整型单精度本题要在这个表达式中体现出 3 个重点。第 1 点是小于 100 ,可写成 “ =0来表示 ”;最后 1 点要体现出 X 是整数,所以可在变量 X 后面加一个百分号 “”。【 7 】 Change解析:每当用户修改或通过代码修改文本框中的文本内容时,将触发其Change 事件。通过该事件可通知程序何时修改了文本框的文本,可以使用该事件随时获得文本框的文本,并更新数据、同步其他控件显示等。【 8 】 6-i解析:MiD $( 字符串,起始位置 ,个数) 函数用于取出字符串从指

37、定位置开始的含指定个数字符的字符串。 本题 MiD $的作用在于依次取出字符串居中位置的1 、 3 、 5 、 7 、 9 个字符。故取字符串起始位置为6-i ,即依次为5 、 4 、 3 、 2 、 1 。【 9 】10【10】10【 11 】 A(i-1)*10+j)解析:根据题意,在嵌套循环中, i 为外循环变量 , 循环次数为 10 次,控制数组 B 的行值, j 为内循环变量循环次数为 10 次,决定着数组 B 的列值,然后根据数组下标的关系, 可写出 (i-1)*10+j 表达式 , 从而相应地对数组 B 进行赋值。二维数组 B 的元素与一维数组 A 的元素存在这样的对应关系: B(i , j)=A(i-1)*10+j) ,如 B(1 , 1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论