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
字符键包括标准键盘上的字符、数字、标点符号、
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
版权声明:本文标题:全国计算机等级考试二级Visual+Basic语言程序设计真题精选2(含答案 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://roclinux.cn/p/1735641886a1682405.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论