二级Visual+Basic语言程序设计模拟28.docx
- 文档编号:23581917
- 上传时间:2023-05-18
- 格式:DOCX
- 页数:28
- 大小:24.67KB
二级Visual+Basic语言程序设计模拟28.docx
《二级Visual+Basic语言程序设计模拟28.docx》由会员分享,可在线阅读,更多相关《二级Visual+Basic语言程序设计模拟28.docx(28页珍藏版)》请在冰豆网上搜索。
二级Visual+Basic语言程序设计模拟28
[模拟]二级VisualBasic语言程序设计模拟28
单项选择题
第1题:
下列叙述中正确的是()。
A.算法就是程序
B.设计算法时只需要考虑数据结构的设计
C.设计算法时只需要考虑结果的可靠性
D.以上三种说法都不对
参考答案:
D
算法是指解题方案的准确而完整的描述,算法既不等于程序,也不等于计算方法,因此A)错误。
设计算法时不仅要考虑对数据对象的运算和操作,还要考虑算法的控制结构,因此B)和C)错误。
第2题:
下列叙述中正确的是()。
A.有一个以上根结点的数据结构不一定是非线性结构
B.只有一个根结点的数据结构不一定是线性结构
C.循环链表是非线性结构
D.双向链表是非线性结构
参考答案:
B
线性结构应满足:
有且只有一个根结点与每个结点最多有一个前件,也最多有一个后件,因此B)正确。
因为有一个以上根结点的数据结构一定是非线性结构,所以A)错误。
循环链表和双向链表都是线性结构的数据结构。
第3题:
下列关于二叉树的叙述中,正确的是()。
A.叶子结点总是比度为2的结点少一个
B.叶子结点总是比度为2的结点多一个
C.叶子结点数是度为2的结点数的两倍
D.度为2的结点数是度为1的结点数的两倍
参考答案:
B
根据二叉树的基本性质3:
在任意一棵二叉树中,度为0的叶子结点总是比度为2的结点多一个,因此答案为B)。
第4题:
软件生命周期中的活动不包括()。
A.市场调研
B.需求分析
C.软件测试
D.软件维护
参考答案:
A
软件生命周期可以分为软件定义、软件开发与软件运行维护三个阶段。
主要活动包括:
可行性研究与计划、需求分析、软件设计、软件实现、软件测试、运行和维护,因此本题答案为A)。
第5题:
某系统总体结构图如下图所示:
该系统总体结构图的深度是()。
A.7
B.6
C.3
D.2
参考答案:
C
根据总体结构图可以看出该树的深度为3,比如:
XY系统——功能2——功能2.1,就是最深的度数的一个表现,因此本题答案为C)。
第6题:
程序调试的任务是()。
A.设计测试用例
B.验证程序的正确性
C.发现程序中的错误
D.诊断和改正程序中的错误
参考答案:
D
程序调试的任务是诊断和改正程序中的错误,因此本题答案为D)。
第7题:
下列关于数据库设计的叙述中,正确的是()。
A.在需求分析阶段建立数据字典
B.在概念设计阶段建立数据字典
C.在逻辑设计阶段建立数据字典
D.在物理设计阶段建立数据字典
参考答案:
A
数据字典是在需求分析阶段建立,在数据库设计过程中不断修改、充实和完善的,因此选择A)。
第8题:
数据库系统的三级模式不包括()。
A.概念模式
B.内模式
C.外模式
D.数据模式
参考答案:
D
数据库系统的三级模式是概念模式、外模式和内模式,不包括数据模式,因此选择D)。
第9题:
有三个关系R、S和T如下:
则由关系R和S得到关系T的操作是()。
A.自然连接
B.交
C.投影
D.并
参考答案:
A
自然连接是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉,因此根据T中元组可以判断关系R和S做的是自然连接操作,答案为A)。
第10题:
下列选项中属于面向对象设计方法主要特征的是()。
A.继承
B.自顶向下
C.模块化
D.逐步求精
参考答案:
A
面向对象设计方法的基本概念有对象、类和实例、消息、继承与多态性,因此选择A)。
第11题:
为了清除列表框中指定的项目,应使用的方法是()。
A.Cls
B.Clear
C.Remove
D.RemoveItem
参考答案:
D
清除列表框中的指定内容要使用RemoveItem方法,格式为:
RemoveItem(索引值),只要指定要清除项目的索引值就可以清除指定项目。
如果要清除列表框中的全部内容可以使用Clear方法。
因此选D)。
第12题:
假定Picture1和Text1分别为图片框和文本框的名称,则下列错误的语句是()。
A.Print25
B.Picture1.Print25
C.Text1.Print25
D.Debug.Print25
参考答案:
C
Print方法可以在窗体上显示文本字符串和表达式的值,并可以在其他图形对象或打印机上输出信息。
其一般格式为:
[对象名称.]Print[表达式表][,|;]其中对象名称可以是窗体(Form)、图片框(PictureBox)或打印机(Printer),也可以是立即窗口(Debug)。
如果省略对象名称,则在当前窗体上输出。
因此C)选项正确。
第13题:
如果把命令按钮的Cancel属性设置为True,则程序运行后()。
A.按Esc键与单击该命令按钮的作用相同
B.按回车键与单击该命令按钮的作用相同
C.按Esc键将停止程序的运行
D.按回车键将中断程序的运行
参考答案:
A
当一个命令按钮的Cancel属性被设置为True时,按Esc键与单击该命令按钮的作用相同。
在一个窗体中,只能有一个命令按钮的Cancel属性被设置为True。
因此选A)。
第14题:
为了使命令按钮的Picture、DownPicture或DisabledPicture属性生效,必须把它的Style属性设置为()。
A.0
B.1
C.True
D.False
参考答案:
B
为了使命令按钮的Picture、DownPicture或DisablePicture属性生效,必须把Style属性设置为1(图形格式),否则设置的图片无效。
因此选B)。
第15题:
列表框中被选中的数据项的位置可以通过一个属性获得,这个属性是()。
A.List
B.ListIndex
C.Text
D.ListCount
参考答案:
B
列表框控件的ListIndex属性值是已选中的表项的位置。
表项位置由索引值指定,第一项的索引值为0,第二项为1,以此类推。
如果没有任何项被选中,ListIndex的值将设置为-1。
第16题:
为了使一个复选框被禁用(灰色显示),应把它的Value属性设置为()。
A.0
B.1
C.2
D.False
参考答案:
C
复选框的Value属性可以设置为0、1或2。
设置为0表示没有选择该复选框,设置为1表示选中该复选框,设置为2表示该复选框被禁用(灰色显示)。
故选C)。
第17题:
为了使文本框显示滚动条,除要设置ScrollBars外,还必须设置的属性是()。
A.AutoSize
B.Alignment
C.Multiline
D.MaxLength
参考答案:
C
为了使文本框显示滚动条,要将ScrollBars的值设置为非0的1、2或3,还要设置Multiline属性为True。
故选C)。
第18题:
在窗体上画一个通用对话框,其名称为CommonDialog1,则下列与CommonDialog1.ShowOpen方法等效的语句是()。
A.CommonDialog1.Action=1
B.CommonDialog1.Action=2
C.CommonDialog1.Action=3
D.CommonDialog1.Action=4
参考答案:
A
通用对话框的属性Action=1与ShowOpen方法等效,而Action=2则与ShowSave等效。
第19题:
如果改变驱动器列表框的Drive属性,则将触发的事件是()。
A.Change
B.Scroll
C.KeyDown
D.KeyUp
参考答案:
A
如果改变驱动器列表框的Driv属性,则将触发Change事件。
第20题:
为了调整图像框的大小以与其中的图形相适应,必须把它的Stretch属性设置为()。
A.True
B.False
C.1
D.2
参考答案:
B
图像框的Strethc属性值为False时,将自动放大或缩小图像框中的图形以与图像框的大小相适应。
第21题:
设有如下程序:
PrivateSubForm_Click()
num=InputBox("请输入一个实数")
p=InStr(num,".")
Ifp 〉0Then
PrintMid(num,p+1)
Else
Print"END"
EndIf
EndSub
运行程序,单击窗体,根据提示输入一个数值。
如果输入的不是实数,则程序输出“END”;否则()。
A.用字符方式输出该实数
B.输出该实数的整数部分
C.输出该实数的小数部分
D.去掉实数中的小数点,保留所有数码输出
参考答案:
C
InStr函数查找小数点在输入的实数中的位置,如果找不到将返回0。
Mid函数一般有3个参数,从第2个参数指定的位置开始,在第1个参数字符串中截取第3个参数指定长度的字符,第3个参数可以省略,这时就一直截取到字符串尾部。
因此程序实现的功能就是如果输入的是实数(p〉0即说明找到了小数点,是实数)就输入该实数的小数部分,否则输出“END”。
因此选项C)正确。
第22题:
在窗体上画一个文本框,名称为Text1,然后编写如下程序:
PrivateSubForm_Load()
Show
Text1.Text=""
Text1.SetFocus
EndSub
PrivateSubForm_Click()
DimaAsString,sAsString
a=Text1.Text
s=""
Fork=1ToLen(a)
s=UCase(Mid(a,k,1))+s
Nextk
Text1.Text=s
EndSub
程序运行后,在文本框中输入一个字符串,然后单击窗体,则文本框中的内容()。
A.与原字符串相同
B.与原字符串中字符顺序相同,但所有字母均转换为大写
C.为原字符串的逆序字符串,且所有字母转换为大写
D.为原字符串的逆序字符串
参考答案:
C
程序中Mid函数从输入字符串左边开始逐一取一个字符同时转换为大写,并连接到上次取出的字符的前面,因此文本框中显示的将是原输入字符串转换为大写的并倒序排列的字符串。
故C)选项正确。
第23题:
有以下通用过程:
Functionfun(NAsInteger)
s=0
Fork=1ToN
s=s+k*(k+1)
Nextk
fun=s
EndFunction
该过程的功能是()。
A.计算N!
B.计算1+2+3+...+N
C.计算1×2×2×3×3×...×N×N
D.计算1×2+2×3+3×4+...+N×(N+1)
参考答案:
D
由程序可知s=1*(1+1)+2*(2+1)+3*(3+1)+4*(4+1)...+N*(N+1),因此选项D)正确。
第24题:
在窗体上画一个命令按钮,然后编写如下事件过程:
PrivateSubCommand1_Click()
a$=InputBox("请输入一个二进制数")
n=Len(a$)
Fori=1Ton
Dec=Dec*2+____(a$,i,1)
Nexti
PrintDec
EndSub
程序功能为:
单击命令按钮,将产生一个输入对话框,此时如果在对话框中输入一个二进制数,并单击“确定”按钮,则把该二进制数转换为等值的十进制数。
这个程序不完整,应在“___”处填入的内容是()。
A.Left
B.Right
C.Val
D.Mid
参考答案:
D
将二进制数转换为十进制数需要将二进制数的每一位取出来进行运算,从一个数值字符串中截取一位数字字符要使用Mid函数,因此在程序空缺处该填入Mid,D)选项正确。
第25题:
设有如下事件过程:
PrivateSubForm_Click()
Sum=0
Fork=1To3
Ifk〈=1Then
x=1
ElseIfk〈=2Then
x=2
ElseIfk〈=3Then
x=3
Else
x=4
EndIf
Sum=Sum+x
Nextk
PrintSum
EndSub
程序运行后,单击窗体,输出结果是()。
A.9
B.6
C.3
D.10
参考答案:
B
程序执行过程如下:
k=1,k〈=1成立,执行x=1,sum=sum+x=1k=2,k〈=2成立,执行x=2,sum=sum+x=1+2=3k=3,k〈=3成立,执行x=3,sum=sum+x=3+3=6,循环结束。
因此最后输出Sum的值为6,答案为B)。
第26题:
在窗体上画一个命令按钮和一个标签,其名称分别为Command1和Label1,然后编写如下事件过程:
PrivateSubCommand1_Click()
Dimarr(10)
Fori=6To10
arr(i)=i-5
Nexti
Label1.Caption=arr(0)+arr(arr(10)/arr(6))
EndSub
运行程序,单击命令按钮,则在标签中显示的是()。
A.0
B.1
C.2
D.3
参考答案:
A
程序中使用For语句为数组中的部分元素赋值,没显示赋值的数组元素的值默认为0,因此arr(0)=0,arr(10)=10-5=5,arr(6)=6-5=1,arr(arr(10)/arr(6))即arr(5/1)=arr(5)=0,arr(0)+arr(5)=0+0=0。
因此标签中显示的是0,A)选项正确。
第27题:
在窗体上画一个名称为Text1的文本框,并编写如下程序:
OptionBase1
PrivateSubForm_Click()
Dimarr
DimStartAsInteger,FinishAsInteger
DimSumAsInteger
arr=Array(12,4,8,16)
Start=LBound(arr)
Finish=UBound(arr)
Sum=0
Fori=StartToFinish
Sum=Sum+arr(i)
Nexti
c=Sum/Finish
Text1.Text=c
EndSub
运行程序,单击窗体,则在文本框中显示的是()。
A.40
B.10
C.12
D.16
参考答案:
C
程序中将变量arr初始化成4个元素的数组,之后使用Lbound和Ubound函数分别获取了数组下标的上下限值,然后再将数组中的元素值相加,最后用整除运算求它们的平均值。
算式可写为(12+4+8+16)/4=(40)/4=12。
因此本题答案为C)。
第28题:
在窗体上画一个名称为Command1的命令按钮,并编写如下程序:
OptionBase1
PrivateSubCommand1_Click()
Dima(4,4)
Fori=1To4
Forj=1To4
a(i,j)=(i-1)*3+j
Nextj
Nexti
Fori=3To4
Forj=3To4
Printa(j,i);
Nextj
Nexti
EndSub
运行程序,单击命令按钮,则输出结果为()。
A.69710
B.710811
C.811912
D.9121013
参考答案:
D
程序中数组变量a的元素内容如下:
第1行,a(1,1)=1,a(1,2)=2,a(1,3)=3,a(1,4)=4;第2行,a(2,1)=4,a(2,2)=5,a(2,3)=6,a(2,4)=7;第3行,a(3,1)=7,a(3,2)=8,a(3,3)=9,a(3,4)=10;第4行,a(4,1)=10,a(4,2)=11,a(4,3)=12,a(4,4)=13;要输出的元素为:
a(3,3)、a(4,3)、a(3,4)、a(4,4),即为9、12、10、13。
因此本题答案应该为D)。
第29题:
在窗体上画一个名称为Command1的命令按钮,并编写如下程序:
FunctionFun(x)
y=0
Ifx〈10Then
y=x
Else
y=y+10
EndIf
Fun=y
EndFunction
PrivateSubCommand1_Click()
n=InputBox("请输入一个数")
n=Val(n)
P=Fun(n)
PrintP
EndSub
运行程序,单击命令按钮,将显示输入对话框,如果在对话框中输入100,并单击“确定”按钮,则输出结果为()。
A.10
B.100
C.110
D.出错信息
参考答案:
A
程序中输入100,则调用过程Fun(100),在过程Fun中判断参数是否小于10,如果小于10则将此值赋给y,如果大于等于10,则将变量y值加10,由于100大于10,所以y值加10,等于10,然后将此值作为函数值返回。
所以输出结果为10。
因此本题答案为A)。
第30题:
在窗体上画一个名称为Command1的命令按钮,并编写如下程序:
PrivateTypeRecord
IDAsInteger
NameAsString*20
EndType
PrivateSubCommand1_Click()
DimMaxSize,NextChar,MyChar
Open"d:
\temp\female.txt"ForInputAs#1
MaxSize=LOF
(1)
ForNextChar=MaxSizeTo1Step-1
MyChar=Input(1,#1)
NextNextChar
PrintEOF
(1)
Close#1
EndSub
运行程序,单击命令按钮,其输出结果为()。
A.True
B.False
C.0
D.Null
参考答案:
A
程序中以顺序输入方式打开d:
\temp\female.txt文件。
LOF函数用于取得打开文件的长度。
EOF函数用于测试文件的是否结束。
根据文件长度值,利用Input函数逐一取出文件中的字符,每读取一个字符,文件指针就自动下移,指向下一个字符。
当执行最后一次循环时,Input函数读取了最后一个字符,文件指针再向下移动就会指向文件的结尾。
因此当使用EOF函数测试文件是否结束时,就会返回True。
所以,Print语句会直接输出“True”。
因此本题答案为A)。
第31题:
在窗体上画一个名称为Text1的文本框和一个名称为Command1的命令按钮,然后编写如下事件过程:
PrivateSubCommand1_Click()
Dimarr(10,10)AsInteger,iasInteger,jAsInteger
Fori=1To3
Forj=2To4
arr(i,j)=i+j
Next
Next
Text1.Text=arr(2,3)+arr(3,4)
EndSub
程序运行后,单击命令按钮,在文本框中显示的值是( )。
A.12
B.13
C.14
D.15
参考答案:
A
本题的难点是嵌套循环的计算。
根据arr1(i,j)=i+j可知,arr(i,j)的值为两个下标值之和,所以arr(2,3)+arr(3,4)的值为2+3+3+4=12。
第32题:
在窗体上用复制、粘贴的方法建立了一个命令按钮数组,数组名为M1。
设窗体Form1标题为“myform1”,双击控件数组中的第3个按钮,打开代码编辑器,写下如下代码:
PrivaeSubM1_Click(IndexAsInteger)
Form1.Caption="myform2"
EndSub
运行时,单击按钮数组中的第1个按钮,窗体标题为( )。
A.Form1
B.M1
C.myform1
D.myform2
参考答案:
D
数组控件在不区别控件下标时,单击任一按钮都会改变窗体标题。
第33题:
编写如下事件过程和函数过程:
PrivateSubForm_Click()
Dimnum(1To6)AsSingle
num
(1)=103:
num
(2)=190:
num(3)=0
num(4)=32:
num(5)=-56:
num(6)=100
Printp2(6,num())
EndSub
PrivateFunctionp2(ByValnAsInteger,number()AsSingle)AsInteger
p2=number
(1)
Forj=2Ton
Ifnumber(j)〈p2Thenp2=number(j)
Nextj
EndFunction
程序运行后窗体上显示的值是( )。
A.-56
B.0
C.103
D.190
参考答案:
A
此题需要仔细分析p2函数的数学意义,不难发现返回值为前n个数中的最小值,所以输出的结果是num数组前6项中的最小值,即为num(5)=-56。
第34题:
有如下函数过程:
FunctionFun(ByValxAsInteger,ByValyAsInteger)AsInteger
DoWhiley〈〉0
reminder=xMody
x=y
y=reminder
Loop
Fun=x
EndFunction
以下是调用该函数的事件过程,该程序的运行结果是( )。
PrivateSubCommand1_Click()
DimaAsInteger
DimbAsInteger
a=100:
b=25
x=Fun(a,b)
Printx
EndSub
A.0
B.25
C.50
D.100
参考答案:
B
本题的难点是子函数的调用过程。
子函数Fun的功能是求x和y的公约数,由欧几里得公式求最大公约数的算法可知,当余数r为0时,x为x和y的最大公约数。
变量x的值通过子函数名Fun返回。
第35题:
有如下函数过程:
Functionlj(xAsInteger)AsLong
DimsAsLong
DimiAsInteger
s=0
Fori=1Tox
s=s+i
Nexti
lj=s
EndFunction
在窗
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 二级 Visual Basic 语言程序设计 模拟 28