一、选择题(1)~(35)每小题2分,共70分)
下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,笞在试卷上不得分。
(1)算法能正确地实现预定功能的特性称为算法的________。
A)确定性 B)易读性 C)健壮性 D)高效性
答案:A
评析:算法的确定性是指算法中的每一个步骤都必须是有明确定义的,不允许有摸棱两可的解释,也不允许有多义性,即每个步骤都是预先定义好的。
(2)数据在计算机存储器内表示时,物理地址与逻辑地址相同并且是连续的,称之为_______。
A)存储结构 B)逻辑结构
C)顺序存储结构 D)链式存储结构
答案:C
评析:如果数据之间的逻辑关系与数据的物理存储结构是一致的,也就是,如果数据之间在逻辑上有相邻关系时,能够在物理位置上体现出来,则这种存储结构称为顺序存储结构。如果数据之间的逻辑相邻关系在存储时是靠存储地址的指针来体现的,则称为链式存储结构。
(3)从未排序序列中依次取出一个元素与已排序序列中的元素依次进行比较,然后将其放 在已排序序列的合适位置,该排序方法称为________。
A)希尔排序 B)冒泡排序 C)插入排序 D)选择排序
答案:C
评析:最基本的排序方法有三大类,即选择排序、交换排序和插入排序。每一类排序方法中又有若干种实现的方法。插入排序的基本思想是,每次取出未排序序列中的第一个元素后,从后至前与已排序序列的元素比较,然后将其插入到合适的位置,使原有序列依然有序。选择排序的基本思想是,每次在n-i+1.(i=1,2,3,…,n-1)个元素中找出最小的元素,然后将它作为有序序列中的第i个元素。希尔排序是将待排序元素序列分成若干个子序列分别进行直接插入排序。交换排序则是按排序的顺序,即顺序或者逆序,每次将待排序序列中的相邻元素进行比较。如果不符合排序的顺序关系,就交换两元素的位置。
(4)对线性表进行折半查找时,要求线性表必须________。
A)以顺序方式存储
B)以链接方式存储
C)以顺序方式存储,且结点按关键字有序排列
D)以链接方式存储,且结点按关键字有序排列
答案:C
评析:半查找算法要求被查找的对象必须采用顺序的存储结构,并且关键字有序排列。
(5)链表不具备的特点是_______。
A)可随机访问任意一个结点
B)插入和删除不需要移动任何元素
C)不必事先估计存储空间
D)所需空间与其长度成正比
答案:A
评析:顺序表可以随机访问任意一个结点,而链表必须从第一个数据结点出发,逐一查找每个结点。
(6)下列描述中正确的是_______。
A)软件是物理产品
B)程序就是软件
C)软件工程由方法、工具和过程三部分组成
D)软件工程是一个机械工程
答案:B
评析:软件是与计算机系统操作有关的程序、规程、规则及任何与之有关的文档和数据。计算机软件是一种逻辑产品,而不是物理产品。软件工程是用工程、科学和数学的原则与方法研制、维护计算机软件的有关技术及管理方法。软件工程由三部分组成,即方法、工具和过程。软件工程方法是完成软件工程项目的技术手段。软件工具可以自动或半自动的生成软件文档。软件工程过程是管理者控制软件开发各环节的基本方法。
(7)软件测试是保证软件质量最关键的步骤,下列关于白盒测试技术描述中不正确的是_______。
A)保证模块中每一独立的路径至少执行一次
B)保证所有判断的每一分支至少执行一次
C)保证每一循环都在边界条件和一般条件下最多执行一次
D)验证所有内部数据结构的有效性
答案:C
评析:件测试技术中,白盒测试技术和黑盒测试技术是两种基本的软件测试手段。白盒测试技术有四个原则:保证模块中每一个独立的路径至少执行一次;保证所有判断的每一分支至少执行一次;保证每一循环都在边界条件和一般条件下至少执行一次;验证所有内部数据结构的有效性。
(8)客观世界中任何一个事物都可以看成一个对象。但是从计算机的角度看,一个对象应 该包含两个要素:一个是_______,另一个是需要进行的操作。
A)语句 B)命令 C)算法 D)数据
答案:D
评析:面向对象的程序中,从计算机的角度看,一个对象应该包含两个元素:其一是数据,相当于家庭中的成员;其二是需要进行的操作,相当于家庭成员的活动。对象就是一个包含数据与这些数据有关的操作的集合。
(9)下列概念中,不是数据库管理系统必须提供的数据控制功能的是_______。
A)安全性 B)完整性 C)移植性 D)一致性
答案:C
评析:数据库管理系统提供的数据控制功能是指在数据库建立、运行和维护时,由DBMS统一管理、统一控制,以保证数据的安全性、完整性和一致性。
(10)设关系R和关系s的元数分别是3和4,关系T是R和s的笛卡儿积,即T=R×S,则关系T的元数是_______。
A)7 B)9 C)12 D)16
答案:A
评析:笛卡儿积的定义是设关系R和s的元数分别是r和s,R和s的笛卡儿积是一个(r+s)元属性的集合,每一个元组的前r个分量来自R的一个元组,后s个分量来自s的一个元组。所以关系T的属性元数是3+4=7。
(11)在窗体上画一个名称为Commandl的命令按钮,然后编写如下事件过程:
Private Sub Commandl_Click()
Move 500,500
End Sub
程序运行后,单击命令按钮,执行的操作为_______。
A)命令按钮移动到距窗体左边界、上边界各500的位置
B)窗体移动到距屏幕左边界、上边界各500的位置
C)命令按钮向左、上方向各移动500
D)窗体向左、上方向各移动500
答案:B
评析:Move方法用于移动窗体或控件到其父容器的某个位置,并可改变其大小。形式如下:[对象.]Move左边距离[,上边距离[,宽度[,高度]]]。其中对象可以是窗体及除时钟、菜单外的所有控件,省略对象为窗体,一个独立的窗体,其父容器为屏幕,故本题选B。
(12)VB6.0表达式COS(0)+ABS(1)+INT(RND(1))的值是_______。
A)1 B)-1 C)O D)2
答案:D
评析:0弧度的余弦值为l,1的绝对值为1。Int函数是返回一个不大于自变量的最大整数,而本题中的自变量又是一个0到l之间且不包括1的随机数,因此,Int(Raad(1))的值为0。所以表达式最后结果为2。
(13)设a为整型变量,不能正确表达数学关系:10<a<15的VB6.0表达式是_______。
A)10<a<15 B)Notfa<=101 And a<15
C)a>10 And a<15 D)a>10 And Not(a>=15)
答案:A
评析:选项c要求a>10和a<15同时成立,是一般"与"逻辑表达式的写法。选项B和选项D都有一个关系写反了,但它们都用了非运算符,它们都能正确表达指定的数学关系式。而VB中没有选项A这种写法。
(14)以下定义数组或给数组元素赋值的语句中,正确的是_______。
A)Dim a As Variant
a=Array(1,2,3,4,5)
B)Dim a(10)As Integer
a=Array(1,2,3,4,5)
C)Dim a%(10)
a(1)="ABCDE"
D)Dim a(3),b(3)As Integer
a(O)=0
a(1)=1
a(2)=2
b=a
答案:A
评析:数组说明语句的形式为:Dim<数组定义符>As<数据类型>[,<数组定义符>As<数据类型>]…。选项B中,给数组元素赋值不全,所以选项B是错误的。选项c中,%表示整型,而在给数组元素赋值时的数据类型是字符型,所以选项C是错误的。.选项D中不能直接对数组变量进行赋值,所以选项D是错误的。
(15)编写如下事件过程:
Private Sub Form_Click()
Dim a As Integer,b As Integer,x As Integer
A=InputBox("a=?")
b=InputBox("b=?")
x=a+b
If a>b Thenx=a-b
Printx
End Sub
程序运行后,从键盘输入3和4,然后单击窗体,输出的结果为_________。
A)3 B)5 C)7 D)9
答案:C
评析:在执行单行If前,变量x的值为输入的两个数之和7,在执行If时,a>b的条件为False,不能执行x=a-b,所以x的值不变。执行Print方法后,输出为7。
(16)若要设置文本框中所显示的文本颜色,使用的属性是_________。
A)FillColor B)Backcolor C)ForeColor D)BackStyle
答案:C
评析:文本框没有BackStyle和FiilColor属性,而文本框的BackColor决定了文本框的背景颜色,ForeColor决定了文本框中所显示文本的颜色。
(17)命令按钮不能响应的事件是_________。
A)DblClick B)Click C)MouseDown D)MouseUp
答案:A
评析:命令按钮的事件中,不存在DblClick事件。
(18)通用对话框提供了一组基于Windows标准的对话框,在它的标准对话框中不含_________。
A)打开对话框 B)另存为对话框 C)显示对话框 D)颜色对话框
答案:C
评析:通用对话框提供了一组基于Windows标准的对话框,它们是:"打开"对话框、"另存为"对话框、"颜色"对话框、"字体"对话框、"打印"对话框以及"帮助"对话框。
(19)以下关于函数过程的叙述中,正确的是_________。
A)函数过程形参的类型与函数返回值的类型没有关系
B)在函数过程中,过程的返回值可以有多个
C)当数组作为函数过程的参数时,既能以传值方式传递,也能以传址方式传递
D)如果不指明函数过程参数的类型,则该参数没有数据类型
答案:A
评析:在函数过程中,过程的返回值只有一个,所以选项B是错误的。一般数组通过传址方式进行传递,所以选项C是错误的。如果不指明函数过程参数的类型,函数类型默认为"Variant"类型,所以选项D是错误的。选项A的说法是正确的。
(20)编写如下事件过程:_________。
Private Sub Form_Click()
For j=10 To 6 Step -1
k=j
Next j
Print k;j
End Sub
程序运行后,单击窗体,其输出结果为_________。
A)5 5 B)5 6 C)6 5 D)6 6
答案:C
评析:For循环中Step用于指定计数器的步长,即计算器改变的幅度。本题中步长为-1,即每循环一次,计数器减1。本题中当j=6时,循环结束,此时k=j=6,然后再执行一次Next j语句,使j变为5。
(21)编写如下事件过程:
DefStr C-F
Private Sub Form_Click()
d$="321"
F="654":
Print d+F
End Sub
程序运行后,单击窗体,其输出结果为_________。
A)321+"654" B)"321654" C)321654 D)显示出错信息
答案:C
评析:DefStr C-F是把变量以C、D、E、F开头的声明为String,而d$是把变量d声明为String。而如果"+"运算符两端的表达式类型都为String,则做字符串连接处理。本题就是做字符串连接,即结果为321654。运算后的结果打印出来时是不带引号的。
(22)在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程:
Private Sub Commandl_Click()
x=-5
s=InputBox("请输入一个整数")
Select Case s
Case Is>0
y=x+l
Case Is=0
y=x+2
Case Else
y=x+3
End Select
Print y
End Sub
程序运行后,单击命令按钮,然后从键盘输入4,则输出的结果是_________。
A)-2 B)-3 C)-4 D)-5
答案:C
评析:Select Case语句是根据表达式的值,来执行几组语句中的其中之一。本题中s的值为输入的4,它满足第一个Case语句,则执行y=x+1-5+1=-4,然后退出Select语句,所以输出的结果为-4。
(23)语句Print 5/4*6\5 Mod 2的输出结果是_________。
A)O B)l C)2 D)3
答案:B
评析:按照算术运算符的优先级的关系,该表达式应先计算5/4,结果为L 25。然后计算1.25*6,结果为7.5。然后计算7.5\5,结果为l。最后计算1 Mod 2。结果为1。所以表达式的最终值为1。
(24)在窗体上画一个名称为Commandl的命令按钮,然后编写如下事件过程:
Private Sub Commandl_Click()
m=63
n=14
Do While m<>n
Do While m>n
M=m-n
Loop
Do While n>m
n = n-m
Loop
Loop
Print m;n
End Sub
程序运行后,单击命令按钮,则输出的结果是_________。
A)7 7 B)l l C)l 7 D)7 1
答案:A
评析:Do While语句是当条件表达式的值为True时,执行循环体,为False时,退出循环。本题中开始时m=63,n=14,两者显然不相等,所以执行第一个Do循环中的语句,即第二个Do循环。m>n,所以要执行第二个循环体中的语句,当执行4次以后,m=7,不满足循环的条件,所以退出第二个循环。然后执行第三个Do语句,满足条件n>m,所以执行n=n-m,得到n=7,不再满足条件,所以退出第三个循环。此时m=n,故也退出第一个循环。所以最终m的值为7,n的值也为7。
(25)在标准模块中用Public关键字声明的变量和常量的有效范围是
A)整个标准模块 B)整个工程
C)所有窗体 D)所有标准模块
答案:B
评析:在标准模块中用Public关键字声明的全局变量和常量在整个工程范围内有效。


