admin 管理员组

文章数量: 1086019


2024年12月30日发(作者:linux数据同步报错86400)

全国计算机等级考试二级Visual+Basic语言程序设计真题

精选2

一、单项选择题

1.软件设计中模块划分应遵循的准则是( )。

A.低内聚低耦合

B.高内聚低耦合 √

C.低内聚高耦合

D.高内聚高耦合

解析:软件设计中,模块划分应遵循的准则是高内聚低耦合、模块大小规模适

当、模块的依赖关系适当等。模块的划分应遵循一定的准则,以保证模块划分

合理,并进一步保证以此为依据开发出的软件系统可靠性高,易于理解和维

护。模块之间的耦合应尽可能地低,模块的内聚应尽可能地高。

2.栈和队列的共同点是( )。

A.都是先进后出

B.都是先进先出

C.只允许在端点处插入和删除元素 √

D.没有共同点

解析:栈和队列都是一种特殊的操作受限的线性表,只允许在端点处进行插入

和删除。二者的区别是:栈只允许在表的一端进行插入或删除操作,是一种

“后进先出”的线性表;而队列只允许在表的一端进行插入操作,在另一端进

行删除操作,是一种“先进先出”的线性表。

3.设窗体上有2个直线控件Line1和Line2,若使两条直线相连接,需满足的

条件是( )。

1.X1=Line2.X2且=Line2.Y2 √

1.X1=Line2.Y1且Line1.Y1=Line2.X1

1.X2=Line2.X1且Line1.Y1=Line2.Y2

1.X2=Line2.X1且Line1.Y2=Line2.Y2

解析:直线控件的X1、Y1和X2、Y2属性分别表示直线两个端点的坐标,即

(X1,Y1)和(X2,Y2)。如果要使两条直线相连,显然这两条直线的某一端

点的坐标相同才行。因此本题需要Line1.X1=Line2.X1且

Line1.Y1=Line2.Y1,或Line1.X1=Line2.X2且Line1.Y1=Line2.Y2,或

Line1.X2=Line2.X1且Line1.Y2=Line2.Y1,或Line1.X2=Line2.X2且

Line1.Y2=Line2.Y2。

asic控件一般都规定一个默认属性,在引用这样的属性时,只写对象

名而不必给出属性名。默认属性为Caption的控件是( )。

A.列表框(ListBox)

B.标签(Label) √

C.文本框(TextBox)

D.组台框(ComboBox)

解析:标签主要用来显示文本信息,它所显示的内容只能用Caption属性来没

置或修改,Caption为标签控件的默认属性,引用时可以只写标签控件的对象

名。

5.下列针对框架控件的叙述中,错误的是( )。

A.框架是一个容器控件

B.框架也有Click和DblClick事件

C.框架也可以接受用户的输入 √

D.使用框架的主要目的是为了对控件进行分组

解析:框架是一个容器控件,用于将屏幕上的对象分组。框架常用的事件是

Click和DblClick,它不接受用户输入,不能显示文本和图形,也不能与图形

相连。

6.下列叙述中正确的是( )。

A.顺序存储结构的存储空间一定是连续的,链式存储结构的存储空间不一定

是连续的 √

B.顺序存储结构只针对线性结构,链式存储结构只针对非线性结构

C.顺序存储结构能存储有序表,链式存储结构不能存储有序表

D.链式存储结构比顺序存储结构节省存储空间

解析:链式存储结构既可以针对线性结构也可以针对非线性结构,BC两项错

误。链式存储结构中每个结点都由数据域与指针域两部分组成,增加了存储空

间,D项错误。

7.要使文本框获得输入焦点,则应采用文本框控件的( )。

us方法

cus方法

ss方法

us方法 √

解析:SetFocus是控件获得焦点的方法,GotFocus是控件获得焦点后触发的

事件,LostFocus是控件失去焦点后触发的事件。本题中程序执行

Text1.SetFocus后,Text 1就获得焦点,进而触发Text1 的GotFocus事

件。

8.为了使文本框显示滚动条,除要设置ScrollBars外,还必须设置的属性是

( )。

ze

ent

ine √

gth

解析:为了使文本框显示滚动条,要将ScrollBars的值设置为非0的1、2或

3,还要设置Multiline属性为True。

9.下列关于二叉树的叙述中,正确的是( )。

A.叶子结点总是比度为2的结点少一个

B.叶子结点总是比度为2的结点多一个 √

C.叶子结点数是度为2的结点数的两倍

D.度为2的结点数是度为1的结点数的两倍

解析:根据二叉树的基本性质3:在任意一棵二叉树中,度为0的叶子结点总

是比度为2的结点多一个。

10.关于KeyPress事件,以下叙述中正确的是( )。

A.在控件数组的控件上按键盘键,不能触发KeyPress事件

B.按下键盘上任一个键时,都能触发KeyPress事件

C.按字母键时,拥有焦点的控件的KeyPress事件会被触发 √

D.窗体没有KeyPress事件

解析:A项错误,在控件数组的任何控件上按键盘键,会触发KeyPress事件;

B项错误,只有按键盘上的ASCII字符键时,才能触发KeyPress事件。ASCII

字符键包括标准键盘上的字符、数字、标点符号、

键等,其他键KeyPress事件不能识别;D项错误,窗体也有

KeyPresss事件。

11.支持子程序调用的数据结构是( )。

A.栈 √

B.树

C.队列

D.二叉树

解析:栈支持子程序调用。栈是一种只能在一端进行插入或删除的线性表,在

主程序调用子程序时要首先保存主程序当前的状态,然后转去执行子程序,最

终把子程序的执行结果返回到主程序中调用子程序的位置,然后继续向下执

行,这种调用方式符合栈的特点。

12.设有如下通用过程:程序运行后,如果单击命令按钮,则在窗体上显示的

内容是( )。

A.10 5

B.20 40 √

C.20 5

D.10 40

解析:过程f中形参变量x没有指定传递方式,则默认按地址传递,会影响实

参值。而变量y在按钮事件过程和挝程中都是局部变量,因此只在本过程中起

作用。因此执行y=f(x)后,x值在过程中被改变为20,而y被赋值为过程返

回值40。因此程序窗体上会显示20和40。

13.以下关于命令按钮的叙述中正确的是( )。

A.命令按钮上可以显示图片 √

B.命令按钮能够分别响应单击、双击事件

C.程序运行时,不能改变命令按钮上的文字

D.若命令按钮的

解析:按钮控件的Picture属性可以给命令按钮指定一个图形。按钮的标题由

属性Caption设置,可以在程序中动态指定。当一个命令按钮的Cancel属性

被设置为True时,按ESC键与单击该命令按钮的作用相同。命令按钮能够响

应单击事件,但不能响应双击事件。

14.关系数据库管理系统所管理的关系是( )。

A.若干个二维表 √

B.一个DBF文件

C.一个DBC文件

D.若干个DBC文件

解析:在关系数库中,一个表就是一个关系,关系数据库管理系统管理的关系

就是多个二维表。

15.窗体上有名称分别为Text1、Text2的文本框,名称为Command1的命令按

钮。运行程序,在Text1中输入“FormList”,然后单击命令按钮,执行如下

程序:以下调用函数的事件过程,该程序的运行结果是( )。程序运行时

的输出结果是( )。

A.401030040

B.033513512 √

C.9-53-57-2-47-2

D.933573572

解析:数组默认下标为0,因此数组a中的元素a(0)=12,a(1)=3,a

(2)=8,a(3)=5,a(4)=10,a(5)=3,a(6)=5,a(7)=9,a(8)

=2,a(9)=4。

k=1时,fun(a(k-1),a(k))即fun(a(0),a(1)),即fun(12,

3),过程中x=x-y=12-3=9-3=6-3=3-3=0,函数返回0;

k=2时,fun(a(k-1),a(k))即fun(a(1),a(2)),即fun(3,

8),x>=y不成立,函数直接返回3;

k=3时,fun(a(k-1),a(k))即fun(a(2),a(3)),即fun(8,

5),过程中X=x-y=8-5=3,函数返回3;

k=4时,fun(a(k-1),a(k))即fun(a(3),a(4)),即fun(5,

10),x>=y不成立,函数直接返回5;

k=5时,fun(a(k-1),a(k))即fun(a(4),a(5)),即fun(10,

3),过程中x=x-y=10-3=7-3=4-3=1,函数返回1;

k=6时,fun(a(k-1),a(k))即fun(a(5),a(6)),即fun(3,

5),x>=y不成立,函数直接返回3;

k=7时,fun(a(k-1),a(k))即fun(a(6),a(7)),即fun(5,

9),x>=y不成立,函数直接返回5;

k=8时,fun(a(k-1),a(k))即fun(a(7),a(8)),即fun(9,

2),过程中x=x-y=9-2=7-2=5-2=3-2=1,函数返回1;

k=9时,fun(a(k-1),a(k))即fun(a(8),a(9)),即fun(2,

4),x>=y不成立,函数直接返回2;

因此程序输出结果为0 3 3 5 1 3 5 1 2,B项正确。

25.设窗体上有名称为Option1的单选按钮,且程序中有语句:

=TruThen下面语句中与该语句不等价的是( )。

hen

on1=TrueThen

e=TrueThen √

on1Then

解析:单选按钮控件Option的Value为True时表示被选中。

和=True是等价的,它们同真同假;Option的默认属性是

Value属性,所以和Option1是等价的。

26.结构化程序所要求的基本结构不包括( )。

A.顺序结构

跳转 √

C.选择结构

D.重复(循环)结构

解析:1966年,Boehm和Jacopini证明了程序设计语言仅仅使用顺序、选择

和重复(循环)三种基本控制结构就足以表达出各种其他形式的结构化程序设

计方法。

27.设有如下通用过程:程序运行后,单击命令按钮,文本框中显示的是

( )。

解析:程序中过程Fun的Do循环的功能是从参数字符串中依次取出后半部分

的字符组成一个字符串,然后这个字符串再重复一次由函数返回。函数Len用

于返回字符串的长度,过程中字符串的长度作为Do循环的结束条件。Mid是字

符串中部截取函数,用来从指定位置开始截取指定个数的字符。过程中使用

Mid(xStr,+1,1),通过循环依次取出字符串后半部分的字符。函数返回的

字符串经LCase函数转换为小写然后显示在文本框中。程序中作为Fun过程参

数的字符串为“ABCDEF”,经处理返回并转换为小写后为“defdef”。

28.下面不属于需求分析阶段任务的是( )。

A.确定软件系统的功能需求

B.确定软件系统的性能需求

C.需求规格说明书评审

D.制定软件集成测试计划 √

解析:需求分析阶段的工作包括:需求获取、需求分析、编写需求规格说明

书、需求评审。

29.窗体上有三个水平滚动条,名称分别为HSRed、HSGreen和HSBlue,取值范

围均是0~255,代表颜色的三种基色。改变滚动框的位置,可以改变三种基色

的值,从而改变窗体的背景色,如下图所示。关于以上程序,如下叙述中错误

的是( )。

是窗体级整型数组

B.改变任何一个滚动条滚动框的位置,窗体的背景色将立刻随之改变

C.3个滚动条change事件过程中只设置了一个color数组元素的值,调用

fill过程失败 √

函数定义中的形式参数是数组型参数

解析:当用Dim语句定义数组时,该语句把数值数组中的全部元素都初始化为

0,而把字符串数组中的全部元素都初始化为空字符串。因此color数组中的

元素初始值都为0,没有空值,过程调用不会失败错误。

30.有以下通用过程:在一般情况下(即不按住Shift键和锁定大写键时)运

行程序,如果按a键,则程序输出的结果是( )。

A.

B.

C. √

D.

解析:KeyCode是按键的实际的字符(不区分大小写),KeyAscii是以字符为

准,是所按键的ASCII码。

33.设用复制、粘贴的方法建立了一个命令按钮数组Command1,以下对该数组

的说法错误的是( )。

A.命令按钮的所有Caption属性都是Command1

B.在代码中访向任意一个命令按钮只需使用名称Command1 √

C.命令按钮的太小都相同

解析:数组控件中的每一个控件都有唯一的索引号,即Index属性。

34.若看到程序中有以下事件过程,则可以肯定的是,当程序运行时

( )。PrivatSuClick_MouseDown(ButtoAInteger,ShifAInteger,

ASingle,ASinglE.Print“VProgram”EnSub

A.用鼠标左键单击名称为“Command1”的命令按钮时,执行此过程

B.用鼠标左键单击名称为“MouseDown”的命令按钮时,执行此过程

C.用鼠标右键单击名称为“MouseDown”的控件时,执行此过程

D.用鼠标左键或右键单击名称为“Click”的控件时,执行此过程 √

解析:Click是控件的名称,MouseDown是鼠标按下事件。鼠标无论左键或右

键单击Click控件都会触发MouseDown事件,执行MouseDown事件过程。

35.现有程序如下:OptioBas1PrivatSuForm_Click()Dix(5,6)

AInteger,y(5)AIntegerFoi=T5Foj=T6x(i,j)=Int(Rn9+1)

NexjNexiCalf(5,6,x,y)Foi=T5Priny(i);NexiEnSubSuf(AInteger,

AInteger,a()AInteger,b()AInteger)Foi=Tmb(i)=0Foj=Tnb(i)=h

(i)+a(i,j)NexjNexiEnSub关于上述程序,以下叙述中正确的是

( )。

A.调用过程语句有错,参数不匹配

B.程序有错,数组下标越界

C.y数组中保存的是x数组每行数据之和 √

D.x数组中数据的取值范围是1~10

解析:程序中利用For循环为数组x的5行6列元素以随机整数赋值,随机数

的范围是从1到9。过程f的功能是计算二维数组a的每行元素值的和,各行

的计算结果都存放在另一个数组b中,最后输出这些和值。

36.在窗体上画一个命令按钮和一个文本框,其名称分别为Command1和

Text1,把文本框的Text属性设置为空白,然后编写如下事件过程:为实现功

能要求,程序的括号中应该填入的内容是( )。

(i)

C.y=y+s(i) √

D.y=y+s

解析:题目中过程s的功能是实现一个数的阶乘,而题目是求1到10的阶乘

的和,则程序空缺处应该是过程s返回值的累加,因此应该填入的内容为

“y=y+s(i)”。

38.与键盘操作有关的事件有KeyPress、KeyUp和KeyDown事件,当用户按下

并且释放一个键后,这三个事件发生的顺序是( )。

n、KeyPress、KeyUp √

n、KeyUp、KeyPress

ss、KeyDown、KeyUp

D.没有规律

解析:题干这三个事件的触发顺序是KeyDown(按下时触发)、KeyPress(按

下或释放时触发)、KeyUp(释放时触发)。与KeyDown和 KeyUp事件不同的

是,KeyPress不显示键盘的物理状态,只传递一个字符。

二、问答题

39.考生文件夹下有一个工程文件sjr5.vbp。运行程序后,从文件中读出数

据,将其放入一个5×5的二维数a中。请编写程序,找出数组a中每行的最

大值及该值在行中的次序(列下标),并将所找到的结果分别保存到一维数组

b、c中【a中第一行的最大值保存在b(1)中,最大值的列次序保存在c

(1)中】。 注意:不能修改程序的其他部分和控件属性,最后将修改后

的文件按原文件名存盘。程序调试通过后,命令按钮的事件过程必须至少执行

一次。

____________________________________________________________________

______________________

正确答案:(无)

解析:步骤1:打开本题工程文件。 步骤2:打开代码编辑窗口,在指定

位置编写如下代码:

Max=a(i,1)'将每行第一个数作为该行最大值,以便进行比较

For j=1 To 5

If Max

Max值

Max=a(i,j)

End If

b(i)=Max'最大值存入数组b中

IfMax=a(i,j)Then c(i)=j'最大值的下标存入数组e中Nextj

步骤3:调试并运行程序,关闭程序后按题目要求存盘。


本文标签: 过程 控件 按钮