一、选择题(1)~(35)每小题2分,共70分)
下列各题A)、B)、c)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。
(1)算法分析的目的是________。
A)找出数据结构的合理性 B)找出算法中输入和输出之间的关系
C)分析算法的易懂性和可靠性 D)分析算法的效率以求改进
答案:D
评析:算法分析是指对一个算法的运行时间和占用空间做定量的分析,一般计算出相应的数量级,常用时间复杂度和空间复杂度表示。分析算法的目的就是要降低算法的时间复杂度和空间复杂度,提高算法的执行效率。
(2)n个顶点的强连通图的边数至少有________。
A)n-1 B)n(n=1) C)n D)n+l
答案:C
评析:在有向图中,若任意两个顶点都连通,则称该图是强连通图,这样的有向图的形状是环状,因而至少应有n条边。
(3)已知数据表A中每个元素距其最终位置不远,为节省时间,应采用的算法是________。
A)堆排序 B)直接插入排序
C)快速排序 D)直接选择排序
答案:B
评析:当数据表A中每个元素距其最终位置不远,说明数据表A按关键字值基本有序,在待排序序列基本有序的情况下,采用插入排序所用时间最少,故答案为选项B。
(4)用链表表示线性表的优点是________。
A)便于插入和删除操作 B)数据元素的物理顺序与逻辑顺序相同
C)花费的存储空间较顺序存储少 D)便于随机存取
答案:A
评析:链式存储结构克服了顺序存储结构的缺点:它的结点空间可以动态申请和释放;它的数据元素的逻辑次序靠结点的指针来指示,不需要移动数据元素。故链式存储结构下的线性表便于插入和删除操作。
(5)下列不属于结构化分析的常用工具的是________。
A)数据流图 B)数据字典 C)判定树 D)PAD图
答案:D
评析:结构化分析的常用工具有数据流图、数据字典、判定树和判定表。而PAD图是常见的过程工具中的图形设计。
(6)软件开发的结构化生命周期方法将软件生命周期划分成________。
A)定义、开发、运行维护
B)设计阶段、编程阶段、测试阶段
C)总体设计、详细设计、编程调试
D)需求分析、功能定义、系统设计
答案:A
评析:通常,将软件产品从提出、实现、使用维护到停止使用退役的过程称为软件生命周期。它可以分为软件定义、软件开发及软件运行维护三个阶段。
(7)在软件工程中,白箱测试法可用于测试程序的内部结构。此方法将程序看做是________。
A)循环的集合 B)地址的集合 C)路径的集合 D)目标的集合
答案:C
评析:软件的白盒测试方法是把测试对象看做一个打开的盒子,它允许测试人员利用程序内部的逻辑结构及有关信息,设计或选择测试用例,对程序所有逻辑路径进行测试。
(8)在数据管理技术发展过程中,文件系统与数据库系统的主要区别是数据库系统具有________。
A)数据无冗余 B)数据可共享
C)专门的数据管理软件 D)特定的数据模型
答案:D
评析:在文件系统中,相互独立的记录其内部结构的最简单形式是等长同格式记录的集合,易造成存储空间大量浪费,不方便使用。而在数据库系统中,数据是结构化的,这种结构化要求在描述数据时不仅描述数据本身,还要描述数据间的关系,这正是通过采用特定的数据模型来实现的。
(9)分布式数据库系统不具有的特点是________。
A)分布式 B)数据冗余
C)数据分布性和逻辑整体性 D)位置透明性和复制透明性
答案:B
评析:分布式数据库系统具有数据分布性、逻辑整体性、位置透明性和复制透明性的特点,其数据也是分布的;但分布式数据库系统中数据经常重复存储,数据也并非必须重复存储,主要视数据的分配模式而定。若分配模式是一对多,即一个片段分配到多个场地存放,则是冗余的数据库,否则是非冗余的数据库。
(10)下列说法中,不属于数据模型所描述的内容的是________。
A)数据结构 B)数据操作
C)数据查询 D)数据约束
答案:C
评析:数据模型所描述的内容有3个部分,它们是数据结构、数据操作和数据约束。其中,数据模型中的数据结构主要描述数据的类型、内容、性质,以及数据库的联系等;数据操作主要是描述在相应数据结构上的操作类型与操作方式。
(11)在设计应用程序时,通过_______窗口可以查看到应用程序工程中的所有组成部分。
A)代码窗口 B)窗体设计窗口
C)属性窗口 D)工程资源管理器窗口
答案:D
评析:工程管理器窗口用来列出当前工程中的窗体和模块以及类模块等工程的组成部分。
(12)在窗体上画一个命令按钮(名称为Command1),然后编写如下事件过程:
Private Sub Command1 click()
Dim b As Integer
b=b+1
End Sub
运行程序,三次单击命令按钮后,变量b的值是:_______。
A)0 B)l C)2 D)3
答案:B
评析:变量定义后,若没有人工定义初值,程序启动后,系统将自动把变量初值设为0。本题中,变量b是局部变量,只作用于单击事件中,每次单击都会对七重新赋值。
(13)以下叙述中错误的是_______。
A)一个工程中可以包含多个窗体文件
B)在一个窗体文件中用Private定义的通用过程能被其他窗体调用
C)在设计Visual Basic程序时,窗体、标准模块、类模块等需要分别保存为不同类型的磁盘文件
D)全局变量必须在标准模块中定义
答案:B
评析:一个应用程序可以有多个窗体(最多可达255个);在默认情况下,模块级变量对该模块中的所有过程都是可见的,但对其他模块中的代码不可见。模块级变量在模块的声明部分用Private或Dim声明全局变量必须用Public或Global语句声明,不能用Dim语句声明,更不能用Private语句声明;同时,全局变量只能在标准模块中声明,不能在过程或窗体模块中声明。
在设计VB程序时,窗体、标准模块、类模块等都分别有各自的类型名,保存时需要保存为不同的文件。
(14)以下语句的输出结果是_______。
Print Format$("123.58","#,###.00")
A)123.58 B)123.00 C).123.58 D)0,123.58
答案:A
评析:Format用于格式化输出文本,其一般格式如下:
Format(expression,[format])
其中,expression为任何有效表达式。format为格式字符串,其描述符作用如下:
#:输出数字,不在输出前后补O。
0:输出数字,在输出的前后补0。
.:输出小数点。
,:输出千分位分隔符。
%:输出百分比符号,同时转化数值。
$:输出前加"$"。
(15)在Visual Basic中,下列运算符中优先级最高的是:_______。
A)* B)\ C)< D)Not
答案:A
评析:运算符优先级别:算术运算>关系运算>逻辑运算
算术运算符运算优先级;(指数)"n">(取负)"-",>(乘法)"*">(浮点除法)"/">(整数除法)"\">(取模)"MOD">(加法)"+"。
(16)以下关系表达式中,其值为假的是:_______。
A)"XYZ"<"Xyz" B)"VisualBasic"="visualbasic"
C)"the"<>"there" D)"Integer">"Int"
答案:B
评析:字符串比较大小规则:从左到右逐个比较其字符的ASCII值。有以下几种情况:
①字符串相等;
②当两个字符串不是所有对应位置上的字符都相等,以第一次出现不同字符时的比较结果为准;
③前面完全相等,以长者为大;
④对于纯英文且大小写相同,可按英文字典顺序比较。在字典顺序后出现的比在前面出现的大。当出现不对应的大小写字母时,小写字母总是大于相同的大写字母;
⑤字符串由汉字组成时,实际上按拼音的ASCII值比较;
⑥数字字符比较遵循上面的规则。
(17)在窗体上画一个命令按钮(名称为Command1),编写如下事件过程:
Private Sub Command1 click()
b=5
c=6
Prim a=b+c
End Sub
程序运行后,单击命令按钮,输出的结果是:_______。
A)a=ll B)a=b+c C)a= D)False
答案:D
评析:在本题_中,变量a未定义,因此初始值为0,在表达式a=b+c中,a=0,b+c=5+6=11,所以表达式的值为False,程序的输出结果为False。
(18)以下程序段运行的结果是:_______。
Dim a(-l To 5)As Boolean
Dim flag As Boolean
flag=False
Dim I As Integer
Dim j As Integer
Do Until flag=True
For i=-l To 5
j=j+1
If a(i)=False Then
a(i)=True
Exit For
End If
If I=5 Then
flag=True
End If
Next
Loop
Print j
A)20 B)7 C)35 D)8
答案:C
评析:该程序段的作用是给数组a的每个数组元素赋值True,具体实现的方式为:
每次从数组a的第一个元素开始判断,该元素是否为False,如果是,则令此元素为True,然后跳出循环,重新从数组a的第一个元素开始判断:如果当前元素不为False,则判断下一个元素。因此语句j=j+1将执行1+2+3+4+5+6+7=28次,即j=28。然后再遍历一遍数组a的所有元素,最后结束程序段。所以j最终的值是:j=28+7=35。
(19)执行下列语句后,显示输入对话框,此时如果单击"确定"按钮,则变量strInput的内容是:________。
atrInput=lnputBox("请输入字符串","字符串对话框","字符串")
A) "请输入字符串" B) "字符串对话框"
C) "字符串" D)空字符串
答案:C
评析:lnputBox("请输入字符串","字符串对话框","字符串"),其中"请输入字符串"为在文本框显示给用户的信息,"字符串对话框".为显示在输入框标题栏中的标题,"字符串"为在没有用户输入时返回的值。
(20)为了清除列表框中的所有内容,应使用的方法是:_________。
A)Cls B)Clear
C)Remove D)Removeltem
答案:B
评析:使用Clear方法清除列表框中所有内容。
(21)窗体上画一个文本框(其名称为Textl)和一个标签(其名称为Labell)。要求程序
运行后,如果在文本框中输入字符,则立即在标签中显示相同的内容。以下可以实
现上述操作的事件过程是:________。
A)Private Sub Textl_Change()
Label1.Caption=Text1.Text
End Sub
B)Private Sub Text1_Click()
Labell.Caption=Textl.Text
End Sub
C)Private Sub Labell_Change()
Label1.Caption=Text 1.Text
End Sub
D)Private Sub Labell_Click()
Label1.Caption=Text 1.Text
End Sub
答案:A
评析:当在文本框中输入字符时,文本框的内容发生变化,所以应把程序写在Textl_Change()事件中。
(22)在窗体上画一个通用对话框,程序运行后,通过ShowOpen方法显示"打开"对话框, 要求在该对话框的"文件类型"栏中只显示扩展名为DOC的文件,则对通用对话框的Filter属性的正确设置是:_________。
A)"(*.DOC)*.DOC" B) "(*.DOC)︱(.DOC)"
C)"(*.DOC)*. DOC" D) "(*.DOC)‖*.DOC"
答案:D
评析:CommonDiaiogl.Filter="(*.DOC)︱*.DoC",通过ShowOpen方法显示"打开"对话框时对话框的"文件类型"栏中只显示扩展名为DOC的文件。
(23)以下正确的叙述是:__________。
A)Select Case语句中的测试表达式可以是任何形式的表达式
B)Select Case语句中的测试表达式只能是数值表达式或字符串表达式
C)在执行Select Case语句时,所有的Case子句均按出现的次序被顺序执行
D)如下Select Case语句中的Case表达式是错误的:
Select Case x
Case 1 t0 10
……
End Select
答案:B
评析:Select Case语句中的测试表达式只能是数值表达式或字符串表达式。
(24)在窗体上画一个文本框,一个命令按钮和一个标签,其名称分别为Text1、Command1 和Labell,文本框的Textl属性设置为空白,然后编写如下事件过程:
Private Sub Command 1 Click()
X=Int(Val(Textl.Text)+0.5)
Label1.Caption=Str(x)
End Sub
程序运行后,在文本框中输入28.653,单击命令按钮,标签中显示的内容是:_______。
A)27 B)28 C)29 D)30
答案:C
评析:程序中各部分值的运算过程为:
Textl.Text="28.653"
Val(Textl.Text)=28.653
Val(Textl.Text)+0.5=29.153
Int(Val(Textl.Text)+0.5)=29
x=29
str(x)="29"。
(25)在窗体上画一个命令按钮,其名称为Commandl,然后编写如下事件过程:
Private Sub Command1_Click()
For i=l TO 4
If i=l Then x=i
If i<=4 Then x=x+l
Print x
Next i
End Sub
程序运行后,单击命令按钮,其输出结果为:________。
A)1 2 3 4 B)2 3 4 5
C)2 3 4 4 D)3 4 5 6
答案:B
评析:第一次循环时x的值为2,每次加1,所以答案为2 3 4 5。


