国家二级VB机试(选择题)模拟试卷21(共345题)_第1页
国家二级VB机试(选择题)模拟试卷21(共345题)_第2页
国家二级VB机试(选择题)模拟试卷21(共345题)_第3页
国家二级VB机试(选择题)模拟试卷21(共345题)_第4页
国家二级VB机试(选择题)模拟试卷21(共345题)_第5页
已阅读5页,还剩101页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

国家二级VB机试(选择题)模拟试卷21(共9套)(共345题)国家二级VB机试(选择题)模拟试卷第1套一、选择题(本题共40题,每题1.0分,共40分。)1、下列关于算法复杂度叙述正确的是A、最坏情况下的时间复杂度一定高于平均情况的时间复杂度B、时间复杂度与所用的计算工具无关C、对同一个问题,采用不同的算法,则它们的时间复杂度是相同的D、时间复杂度与采用的算法描述语言有关标准答案:B知识点解析:算法的时间复杂度是指执行算法所需要的计算工作量,它与使用的计算机、程序设计语言以及算法实现过程中的许多细节无关,B选项正确,D选项错误。最坏情况下的时间复杂度可以与平均情况的时间复杂度相同,A选项错误。不同的算法时间复杂度一般不相同,C选项错误。2、设有栈S和队列Q,初始状态均为空。首先依次将A,B,C,D,E,F入栈,然后从栈中退出三个元素依次入队,再将X,Y,Z入栈后,将栈中所有元素退出并依次入队,最后将队列中所有元素退出,则退队元素的顺序为A、DEFXYZABCB、DEFXYZABCC、FEDXYZCBAD、DEFZYXABC标准答案:B知识点解析:栈是一种特殊的线性表,它所有的插入与删除都限定在表的同一端进行。队列是指允许在一端进行插入,而在另一端进行删除的线性表。将A,B,C,D,E,F入栈后,栈中元素为ABCDEF,退出三个元素入队,队列元素为FED,将X,Y,Z入栈后栈中元素为ABCXYZ,全部入队后,队列元素为FEDZYXCBA,故B选项正确。3、下列叙述中正确的是A、有两个指针域的链表称为二叉链表B、循环链表是循环队列的链式存储结构C、带链的栈有栈顶指针和栈底指针,因此又称为双重链表D、结点中具有多个指针域的链表称为多重链表标准答案:D知识点解析:双向链表与二叉链表均是有两个指针域的链表,A选项错误。在单链表的第一个结点前增加一个表头结点,队头指针指向表头结点,最后一个结点的指针域的值由NULL改为指向表头结点,这样的链表称为循环链表。循环队列是队列的一种顺序存储结构。循环链表与循环队列是两种存储结构,B选项错误。双向链表结点有两个指针域,指向前一个结点的指针和指向后一个结点的指针,而带链的栈是单链表形式,C选项错误。故正确答案为D选项。4、某二叉树共有845个结点,其中叶子结点有45个,则度为1的结点数为A、400B、754C、756D、不确定标准答案:C知识点解析:在树结构中,一个结点所拥有的后件个数称为该结点的度,所有结点中最大的度称为树的度。对任何一棵二叉树,度为0的结点(即叶子结点)总是比度为2的结点多一个。二叉树共有845个结点,度为0的结点有45个,度为1的结点数为n1,度为2的结点数为n2,则845=45+n1+n2,且45=n2+1,则n1=756,C选项正确。5、软件需求分析阶段的主要任务是A、确定软件开发方法B、确定软件开发工具C、确定软件开发计划D、确定软件系统的功能标准答案:D知识点解析:需求分析阶段的工作可以分为4个方面:需求获取、需求分析、编写需求规格说明书和需求评审,包括确定软件系统的功能,D选项正确。A、B、C选项均为开发阶段工作。6、下面对软件测试描述错误的是A、严格执行测试计划,排除测试的随意性B、随机地选取测试数据C、随机地选取测试数据D、软件测试是保证软件质量的重要手段标准答案:B知识点解析:在测试之前制定测试计划,并严格执行,测试用例的选择不可随意,应选择有代表性的,尽可能发现迄今为止尚未发现的错误,A选项叙述正确,B选项叙述错误。测试根本目的是尽可能多地发现并排除软件中隐藏的错误,C选项叙述正确。软件测试是保证软件质量、可靠性的关键步骤,D选项叙述正确。故正确答案为B选项。7、结构化程序的三种基本控制结构是A、顺序、选择和重复(循环)B、过程、子程序和分程序C、顺序、选择和调用D、调用、返回和转移标准答案:A知识点解析:结构化程序的三种基本控制结构:顺序、选择和重复,故A选项正确。8、数据库中对概念模式内容进行说明的语言是A、数据定义语言B、数据操纵语言C、数据控制语言D、数据宿主型语言标准答案:A知识点解析:数据库管理系统为完成主要功能提供了相应的数据语言,它们是:数据定义语言,该语言负责数据的模式定义与数据的物理存取构建;数据操纵语言,该语言负责数据的操纵,包括查询与增、删、改等操作;数据控制语言,该语言负责数据完整性、安全性的定义与检查以及并发控制、故障恢复等功能。故A选项正确。9、某个工厂有若干个仓库,每个仓库存放有不同的零件,相同零件可能放在不同的仓库中。则实体仓库和零件间的联系是A、多对多B、一对多C、多对一D、一对一标准答案:A知识点解析:一般来说,实体集之间必须通过联系来建立联接关系,分为三类:一对一联系(1:1)、一对多联系(1:m)、多对多联系(m:n)。每个仓库存放有不同的零件,相同零件可能放在不同的仓库中,故实体仓库和零件间的联系是多对多,A选项正确。10、有三个关系R、S和T如下:则由关系R和S得到关系T的操作是A、交B、差C、并D、选择标准答案:A知识点解析:用于查询的3个操作无法用传统的集合运算表示,引入的运算为投影运算、选择运算、笛卡尔积。常用的扩充运算有交、除、连接及自然连接等。选择,从关系中找出满足给定条件的元组的操作称为选择,题目中无给定条件,故D选项错误。差:R-S结果是属于R但不属于S的记录组成的集合,T中元组"c32"同时属于R和S,B选项错误。并:R∪S是将S中的记录追加到R后面,T中元组少于R,故C选项错误。交:R∩S结果是既属于R又属于S的记录组成的集合,与题目中结果相符,故A选项正确。11、表达式5*Sqr(25)+Sgn(4^4)的值是A、29B、25C、26D、36标准答案:C知识点解析:Sgn(x)英文全称Sign(x),是符号函数,即求变量x的符号。注意其与变量x的大小无关,仅与变量正负有关。x为正数,返回1;x为负数,返回-1;x为0,返回0。运算符^在VB中是乘方运算,4^4等于256,为正数,故Sgn(4^4)=1。Sqr(X)是平方根函数,返回值为自变量的平方根,Sqr(25)等于5,5*Sqr(25)等于25,故最后结果为26,正确答案为选项C。12、无论X取何值,均能成立的表达式是A、Int(X)>=Abs(X)B、Int(X)=Abs(X)C、Int(X)<=Abs(X)D、Int(X)<>Abs(X)标准答案:C知识点解析:Int(X)返回不大于X的最大整数;Abs(X)返回自变量X的绝对值,无论X是正数、0还是负数,其Int(X)一定小于等于其绝对值,故正确答案为选项C。13、要求在窗体中定义一个变量x,在本窗体所有过程中都可以访问它,而在其他模块中不能访问,则该变量的定义是A、在本窗体的某个过程中写语句:DimxB、在本窗体所有过程之前写语句:DimxC、在本窗体所有过程之前写语句:PublicxD、在本窗体的所有过程中写语句:Dimx标准答案:B知识点解析:选项A,在本窗体的某个过程中写语句:Dimx,仅能在本窗体本过程中访问。选项C,在本窗体所有过程之前写语句:publicx,则在其他模块中均可访问。选项D,在本窗体的所有过程中写语句:Dimx,则为局部变量,仅能在本过程中访问它。故正确答案为B选项。14、以下叙述中错误的是A、对象具有属性、方法等成员B、对象可以识别预先定义的事件C、一个对象中包含数据及其对这些数据的相关操作D、对象的属性值一经初始化,则不能再改变标准答案:D知识点解析:VisualBasic应用程序可以以解释方式和生成可执行文件方式执行,故正确答案为选项D。15、以下叙述中正确的是A、影响窗体上某个文本框的Tab顺序的属性是TabStopB、语句Me.Text="VisualBasic"用于设置当前窗口的标题信息C、用于获取文本框中当前被选中文本的属性为SelTextD、要获取水平滚动条中当前滚动块的位置应使用其Position属性标准答案:D知识点解析:对象是具有特殊属性(数据)和行为方式(方法)的实体,既包含数据,又包含数据的操作方法,选项A、C正确;系统设计好的对象称为预定义对象,这些对象可以直接拿来使用,B选项正确;在VB中,可以通过属性窗口和程序代码两种方式设置对象属性,属性窗口设置方式在程序运行后不能通过属性窗口改变属性值,但是程序代码设置方式可以灵活地在程序运行期间改变对象的属性值。故正确答案为选项D。16、下面关于组合框Cb1的叙述中正确的是A、程序运行时,列表项可以多选B、鼠标单击一个列表项后,Cb1.Text的值等于Cb1.List(Cb1.ListIndex)的值C、利用Selected属性可以判断哪个列表项被选中了D、组合框不响应Change事件标准答案:C知识点解析:影响窗体上某个文本框的Tab顺序的属性是TabIndex,TabStop属性指定是否能使用Tab键将焦点移到控件上,故A选项错误;控件名.Text用来设置文本框中显示的内容,标签名.Caption用来显示在标签标题中显示的文本,故B选项错误;获取滚动条中当前滚动的位置应使用Value属性,故D选项错误。本题正确答案为C选项。17、下面关于组合框Cb1的叙述中正确的是A、程序运行时,列表项可以多选B、鼠标单击一个列表项后,Cb1.Text的值等于Cb1.List(Cb1.ListIndex)的值C、利用Selected属性可以判断哪个列表项被选中了D、组合框不响应Change事件标准答案:B知识点解析:在程序运行时,列表项只能单选,不能多选。故选项A错误;无法利用Selected属性来判断哪个列表项被选中了,组合框可以响应Change事件。故选项C和D均错误;本题正确答案为B。不同窗体中的控件可以完全一样,一个窗体可以访问其他窗体控件中的数据。故选项D错误;本题正确答案为B。18、在列表框或组合框中,能够表示当前被选中列表项序号的是A、ListIndexB、IndexC、TopIndexD、List标准答案:A知识点解析:列表框或组合框中,ListIndex属性用于设置或返回当前被选择项目的索引号;List属性用来列出或设置列表项的内容。故正确答案为选项A。19、要在程序运行过程中把Command1按钮的标题修改为"按钮",正确的做法是A、在属性窗口中把Command1按钮的Caption属性改为"按钮"B、在程序中执行语句:Command1.Caption="按钮"C、在属性窗口中把Command1按钮的Text属性改为"按钮"D、在程序中执行语句:Command1.Text="按钮"标准答案:B知识点解析:Caption:用来设置显示在按钮上的标题,在程序运行过程中修改按钮的标题应该使用,Command1.Caption="按钮"。故本题正确答案为B。20、文件列表框中用于设置或返回所选文件路径和文件名的属性是A、FileB、FilePathC、PathD、FileName标准答案:D知识点解析:Path属性返回要显示的文件所在的路径,其默认值为系统的当前工作路径;FileName属性主要用于返回在文件列表框中被选定文件的文件名。故正确答案为选项D。21、在窗体上画2个名称分别为Text1和Text2的文本框,然后编写如下事件过程:PrivateSubForm_Load()ShowText1.Text="ABCDEF"Text2.SetFocusEndSubPrivateSubText1_GotFocus()Text1.SelStart=2Text1.SelLength=3EndSub运行程序,单击Text1,该文本框中的内容为A、显示ABCDEF,且BCD被选中B、显示ABCDEF,且CDE被选中C、显示BCDD、显示CDE标准答案:B知识点解析:Form_Load方法即在Form窗体加载时,Text1.Text的值被赋值为"ABCDEF",Text2.SetFocus将光标定于文本框Text2。Text1_GotFocus方法即在Text1获得焦点时,Text1.SelStart=2从本文框起始位置为2,即C的位置,Text1.SelLength=3设置选中长度为3。故正确答案为选项B。22、下面关于框架控件的叙述中正确的是A、框架响应Click事件B、框架可以接受焦点C、框架的标题是字符串,放在Text属性中D、可以在框架中输入文本标准答案:A知识点解析:Frame控件中不能接收焦点,选项B错误;Caption属性用来设置框架的标题文本,选项C错误;框架控件是一个容器控件,可以在其上放置其他控件对象,但不能输入文本,选项D错误。故正确答案为选项A。23、通过语句X=InputBox("输入数据","示例","0")对变体类型的变量X输入数据,程序运行后,如果在对话框的输入区中输入数值100并按回车键,则下列叙述中正确的是A、变量X的值是字符串"0"B、在InputBox对话框标题栏中显示的是"输入数据"C、输入对话框的输入区中的初始默认值为数值0D、变量X的值是字符串"100"标准答案:D知识点解析:InputBox函数的格式为InputBox("提示文本"[,"对话框标题"][,"默认值"]),输入数值100,变量X的值为字符串"100",标题栏中显示的是"示例",初始默认值为字符串"0",可见,选项A、B、C错误,故正确答案为选项D。24、下面说法中错误的是A、使用ReDim语句可以改变数组的维数B、使用ReDim语句可以改变数组的类型C、使用ReDim语句可以改变数组的每一维的大小D、ReDim语句可以使原数组中的内容被清除标准答案:B知识点解析:ReDim语句不能改变动态数组的数据类型,除非动态数组被声明为Variant类型,故正确答案为选项B。25、若程序中有语句:y=proc(6),则proc应该是A、一个Function过程的名称B、一个Sub过程的名称C、一个事件过程的名称D、既可能是一个Function过程的名称,也可能是一个Sub过程的名称标准答案:A知识点解析:VB中Function过程才有返回值,Sub过程没有返回值,故正确答案为选项A。26、下列说法中正确的是A、任何情况下都可以用标准工具栏的"菜单编辑器"按钮打开菜单编辑器B、任何情况下都可以用标准工具栏的"菜单编辑器"按钮打开菜单编辑器C、任何情况下都可以用"工具"菜单中的"菜单编辑器"命令打开菜单编辑器D、只有当某个窗体为当前活动窗体时,才能打开菜单编辑器标准答案:D知识点解析:VB中菜单编辑器是用来设计VB应用程序中的菜单的,它可以在编程量很小的情况下完成交互式菜单的快速自定义和建立菜单,菜单即窗体,因此,只有当某个窗体为当前活动窗体时,才能打开菜单编辑器。选项A、B、C错误,正确答案为选项D。27、下面关于菜单的叙述中正确的是A、弹出式菜单和下拉式菜单都可用菜单编辑器编辑B、弹出式菜单不能有子菜单C、菜单项可以响应Click事件和DblClick事件D、有子菜单的菜单项不响应Click事件标准答案:A知识点解析:弹出式菜单也可以有子菜单,选项B错误;每一个菜单包括主菜单和子菜单都相当于一个命令按钮,单击菜单项即触发该菜单项的Click事件过程,选项C、D错误。故正确答案为选项A。28、为了向c盘根目录下的Stud.txt文件中添加数据而不破坏其原有数据,下列正确打开该文件的语句是A、Open"c:\Stud.txt"ForOutputAs#1B、Open"c:\Stud.txt"ForAppendAs#1C、Openc:\Stud.txtForOutputAs#1D、Openc:\Stud.txtForAppendAs#1标准答案:B知识点解析:文件打开格式为Open文件说明[For方式][Access存取类型][锁定]As#文件号[Len=记录长度]。其中,输入输出方式中Output指定文件顺序输出方式,Append方式指定文件顺序输出方式,并向文件的尾部追加写入数据。故本题正确答案为B选项。29、如果希望向一个顺序文件写入数据,但又要保留文件中的原有内容,应采取的文件打开方式是A、AppendB、OutputC、RandomD、Input标准答案:A知识点解析:Input、Output和Append用于设置顺序文件的打开方式,Input表示从打开的文件中读取数据;Output表示向打开的文件中写入数据,文件中原有的数据被覆盖;Append向打开的文件中添加数据,但文件中原有的数据被保留,新的数据以文件为开始进行添加。故正确答案为选项A。30、设有如下事件过程:PrivateSubCommand1_Click()ch="ABCDEFG"n=Len(ch)k=1DoPrintMid(ch,k,1);Mid(ch,n,1);k=k+1n=n-1LoopUntilk>nEndSub运行此过程所产生的输出是A、AGBFCEDDB、AGBFCEDC、GFEDCBAD、GAFBECD标准答案:A知识点解析:函数Len(ch)返回字符串ch的长度,Len(ch)=7;函数Mid()表示向后截取一个字符,题目中k=1,并且每次递增1,所以Mid(ch,k,1)表示从ch字符串的第1个字符开始,每次向后截取1个字符;n=Len(ch)=7,并且n每次递减1,所以Mid(ch,n,1)表示从最后1个字符开始,每次截取字符串ch的1个字符;直到判断条件k>n成立。故正确答案为选项A。31、为了计算下面的分段函数(其中x为整数)某人编写了如下函数Functionfun(xAsInteger)AsIntegerDimyAsIntegerSelectCasexCasex<0y=x-2Case0Y=xCase1,2,3,4,5Y=x*2CaseElseY=x+2EndSelectFun=y调试时发现有错误,需要修改,下面正确的修改方案是A、把casex<0改为caseIs<0B、把Case1,2,3,4,5改为Case0C、把case0改为casex=0D、把CaseElse改为CaseIs>=6标准答案:A知识点解析:多分支选择结构语句中,表达式列表中表达式的结构可以是值的形式,也可以是表达式To的形式,还可以是Is关系运算表达式的形式,故正确答案为选项A。32、有如下事件过程:PrivateSubForm_Click()DimaAsLong,bAsLongDimsumAsLongDimxAsIntegera=1b=1Forx=1To11Step2a=b*x________s=s+asum=sum+sNextxPrintsumEndSub以上程序的功能是,计算1!+(1!+3!)+(1!+3!+5!)+…+(1!+3!+5!+…+11!)的值并输出。程序不完整,在________处应填入的内容是A、b=a*(x+1)B、a=a*(x-1)C、a=a*(x+1)D、b=a*x标准答案:A知识点解析:最简单的方法,直接代入一些数字,如x=1时,A:b=2a;B:a=0;C:a=2a;D:b=a;再代入程序中,知B选项不符合题意。当循环体执行了两次,即当x=3时,再分别将A、C、D的答案代入程序中,知C和D选项错误;另一种方法是,本程序的主要由累加和累乘两种运算结合在一起,分析内容,可知,a=b*x,实现的是记录单个数值,如:1!、3!、5!、7!等,空格处的功能,是要保存下一次阶乘的值,如7!等价于a=b!*7,b的值应该是b=a*(7+1);故本题正确答案为A。33、下面程序的功能是找出这样一个三位整数:它等于每位数字的阶乘之和,例如145就是这样的数(即145=1!+4!+5!)PrivateSubCommand1_Click()DimxAsInteger,iAsInteger,jAsInteger,kAsIntegerFori=1To9Forj=0To9Fork=0To9a=___________________Ifa=fact(i)+fact(j)+fact(k)ThenPrintaEndIfNextkNextjNextiEndSubFunctionfact(nAsInteger)AsLongDimxAsLongx=1Fork=1Tonx=x*kNextkfact=xEndFunction程序不完整,在横线上应填写的是A、i*100+j*10+kB、i*1000+j*100+k*10C、i*10+j*10+k*10D、fact(0)+fact(1)+fact(9)标准答案:A知识点解析:本题中fact()过程表示求得n的阶乘,即n!;程序中,i、j、k分别表示该整数的百、十、个位上的数,旨在使得100*i+10*j+k=i!+j!+k!。故正确答案为选项A。34、有如下通用过程:PrivateSubSt(ByValstrXAsString,strYAsString)DimTsAsStringi=Len(strX)DoWhilei>=1Ts=Ts+Mid(strX,i,1)i=i-1LoopstrY=TsEndSub在窗体上画一个命令按钮,其名称为Command1,然后编写如下事件过程:PrivateSubCommand1_Click()Dims1AsString,s2AsStrings1="abcd"CallSt(s1,s2)Prints2EndSub程序运行后,单击命令按钮,输出结果是A、abcdB、dabcC、dcbaD、abdc标准答案:C知识点解析:求字符串长函数Len(s),英文全称:Length,返回字符串s的长度,即所包含的字符的个数。DoWhile…Loop,当程序开始执行时,先计算循环"条件"值,当条件为假时结束循环,否则执行循环体。字符串截取函数Mid$(s,n1,n2),从s第n1个字符开始,向后截取n2个字符。St过程中strX前有ByVal,是按值传递,即s1将值传给形参strX;strY是按地址传递,s2把地址传给了形参strY,strX的变化不引起s1的变化,但strY的变化却能改变s2。程序开始执行时,先将字符变量s1的值按值传递的方式传给了过程St,i=Len(strX)=Len(s1)=4;执行dowhile循环,循环条件4>=1为真,执行循环体,Mid(strX,4,1)=d,Ts=Ts+d=d,i=3;循环条件3>=1为真,执行循环体,Mid(strX,3,1)=c,Ts=Ts+d=dc,i=2;如此循环,知最后strY=dcba,因strY与s2是按地址传递的方式,故strY值的变化也会引起s2值的变化,所以s2=strY=dcba;本题正确答案为C。35、在窗体上画一个名称为Command1的命令按钮,然后编写如下程序代码:DimxAsIntegerPrivateSubMySub()StaticxAsIntegerDimyAsIntegerx=x+10y=y+10Print"x=";x;"y=";y;EndSubPrivateSubForm_Load()x=50EndSubPrivateSubCommand1_Click()CallMySubMySubPrint"x=";xEndSub程序运行时,单击Command1,则在窗体上输出的结果是A、x=10y=10x=60y=10x=60B、x=60y=10x=70y=10x=70C、x=60y=10x=70y=10x=50D、x=10y=10x=20y=10x=50标准答案:D知识点解析:dim定义的变量称为"自动变量",当引用Dim定义变量时,变量值会被重新设置(数值变量重新设置为0,字符串变量被设置为空)。也就是说,下次再使用此变量,其值为初始值;而static定义变量,每次引用该静态变量后,其值会继续保留,作为下一次引用时该变量的初始值。程序先定义了模块变量x为整型,位置在事件之外;当程序开始运行时,首先加载窗体,得x=50,然后监听命令按钮事件,当用户点击了命令按钮,程序CallMySub过程,会用Call语句调用Sub过程MySub。在MySub过程中,定义了局部变量y,和静态变量x,位于过程内部,x=x+10=10,y=y+10=10,接着打印x=10y=10。注意,本过程执行完后,局部变量y的值会被重新设置为0,而Static定义的变量x,其值为10;程序继续执行MySub,第二次调用MySub过程,x=x+10=10+10=20,y=y+10=0+10=10,接着打印x=20y=10;程序最后打印x的值,用static所定义的变量x,在过程内,其作用域范围被限定,其不会改变模块变量x的值。故打印出来的结果是x=50,也就是加载窗体后,对变量x进行初始化后的值。故本题正确答案为D。36、在窗体上画2个文本框(名称分别为Text1和Text2),一个命令按钮(名称为Command1)。并定义以下记录类型和变量:PrivateTypeTeacherIDAsIntegerNameAsString*10EndTypeDimTeachAsTeacher程序运行后,在Text1中输入编号(ID),在Text2中输入姓名(Name),然后单击命令按钮,则把两个文本框中的内容写入随机文件d:\f1.txt。以下能够正确实现上述功能的事件过程是A、PrivateSubCommand1_Click()Open"d:\f1.txt"ForRandomAs#1Len=Len(Teach)Teach.ID=Val(Text1.Text)Teach.Name=Text2.TextPut#1,1,TeachClose#1EndSubB、PrivateSubCommand1_Click()Open"d:\f1.txt"ForRandomAs#1Len=Len(Teach)Teach.ID=Val(Text1.Text)Teach.Name=Text2.TextPut#1,Teach.ID,Teach.NameClose#1EndSubC、PrivateSubCommand1_Click()Open"d:\f1.txt"ForRandomAs#1Len=Len(Teach)Teach.ID=Val(Text1.Text)Teach.Name=Text2.TextWrite#1,1,TeachClose#1EndSubD、PrivateSubCommand1_Click()Open"d:\f1.txt"ForRandomAs#1Len=Len(Teach)Teach.ID=Val(Text1.Text)Teach.Name=Text2.TextWrite#1,Teach.ID,Teach.NameClose#1EndSub标准答案:A知识点解析:向顺序文件写操作格式:Write#文件号,表达式,题目要求为随机文件,故选项C和D均错误;向随机文件写操作格式:Put#文件名,[记录号],变量,选项B是将Text2中输入姓名写入到随机文件中,而不是将两个文本框的内容写入,故选项B错误。本题正确答案为A。37、在窗体上画2个名称分别为Label1和Label2的标签,然后编写如下程序代码:SubS(LAsLabel,ByValaAsInteger)L.Caption="1234"a=a*aEndSubPrivateSubForm_Load()Label1.Caption="ABCD"Label2.Caption=10EndSubPrivateSubForm_Click()DimaAsIntegera=Val(Label2.Caption)SLabel1,aLabel2.Caption=aEndSub运行程序,单击窗体,在两个标签中显示的内容分别是A、ABCD和10B、1234和100C、ABCD和100D、ABCD和100标准答案:D知识点解析:本题中Label2.Caption的值a为ByVal按值传递,当过程调用结束后,参数所占用的存储空间也同时被释放,a的值不变,但是Label1.Caption的传递方式为默认传递方式(ByRef),对形参的改变会影响实参,即Label1.Caption会被修改为"1234"。故正确答案为选项D。38、在窗体上画一个名称为Command1的命令按钮,一个名称为Text1的文本框数组(含4个文本框,下标从0开始),然后编写如下事件过程:PrivateSubCommand1_Click()DimiAsInteger,nAsIntegerForEachTextBoxInText1Text1(i)=Text1(i).Indexn=10*(n+Val(Text1(i).Text))i=i+1NextPrintnEndSub运行程序,单击命令按钮Command1,则在窗体上的输出结果是A、0123B、123C、1234D、1230标准答案:D知识点解析:控件数组是指由一组相同类型的控件组成。数组中的每一个控件都有唯一的索引号(Index)。分析该程序,在ForEach……Next结构中,语句"Text1(i)=Text(i).Index",实际上是将每个索引(Index)的值赋予每个控件元素的Text值。第一次执行时,n=0,Text1(0)=Text(0).Index,n=10*(0+Val(Text1(0).Text))=10*(0+0)=0,i=2。第二次执行时,Text1(1)=Text(1).Index,n=10*(0+Val(Text1(1).Text))=10*(0+1)=10,i=3。第三次执行时,Text1(2)=Text(2).Index,n=10*(10+Val(Text1(2).Text))=10*(10+2)=120,i=4。第四次执行时,Text1(3)=Text(3).Index,n=10*(120+Val(Text1(3).Text))=10*(120+3)=1230,i=5。循环结束。故最后输出结果为1230。本题正确答案为D。39、有如下通用过程:FunctionFs(ByValnAsLong)AsLongDimkAsLongk=1n=Abs(n)DoWhilenk=k*(nMod10)n=n\10LoopFs=kEndFunction编写如下事件过程:PrivateSubForm_Click()DimaAsLongDimbAsLonga=InputBox("请输入一个数")a=CLng(A)b=Fs(A)PrintbEndSub程序运行后,单击窗体,在输入对话框中输入567,输出结果为A、56B、67C、210D、18标准答案:C知识点解析:A的值为256,调用Fs函数,执行3次循环:第1次,k=7,n=56;第2次,k=7*6=42,n=5;第3次,k=42*5=210,n=0;不满足循环条件,退出循环。故正确答案为选项C。40、在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程:OptionBase1PrivateSubCommand1_Click()Dima(3,3)AsIntegerDimiAsInteger,jAsInteger,sAsIntegers=0Fori=LBound(a,1)ToUBound(a,1)Forj=LBound(a,2)ToUBound(a,2)a(i,j)=(i-1)*3+jIfi>=jThens=s+a(i,j)EndIfNextj,iPrintsEndSub程序运行时,单击Command1,则在窗体上输出的结果是A、15B、26C、34D、19标准答案:C知识点解析:UBound函数返回为指定的数组维可用的最大下标,LBound函数返回为指定的数组维可用的最小下标。程序开头定义了OptionBase1这时定义一维数组下标从1开始;故LBound(A,1)=1,Ubound(A,1)=3;LBound(A,2)=1,Ubound(A,2)=3;外层for循环,循环变量i从1取到3,内层for循环,循环变量j从1取到3,根据a(i,j)=(i-j)*3+j可知,a(1,1)=1;a(1,2)=2;a(1,3)=3;a(2,1)=4;a(2,2)=5;a(2,3)=6;a(3,1)=7;a(3,2)=8;a(3,3)=9;If条件Then部分,如果选择的条件为真,则执行then部分;满足i>=j的数组元素有a(1,1),a(2,1),a(2,2),a(3,1),a(3,2),a(3,3),将各项值累加得到s的值,s=34。故正确答案为选项C。国家二级VB机试(选择题)模拟试卷第2套一、选择题(本题共40题,每题1.0分,共40分。)1、下列叙述中正确的是A、算法的效率只与问题的规模有关,而与数据的存储结构无关B、算法的时间复杂度是指执行算法所需要的计算工作量C、数据的逻辑结构与存储结构是一一对应的D、算法的时间复杂度与空间复杂度一定相关标准答案:B知识点解析:算法的效率与问题的规模和数据的存储结构都有关,A错误。算法的时间复杂度,是指执行算法所需要的计算工作量,B正确。由于数据元素在计算机存储空间中的位置关系可能与逻辑关系不同,因此数据的逻辑结构和存储结构不是一一对应的,C错误。算法的时间复杂度和空间复杂度没有直接的联系,D错误。2、下列叙述中正确的是A、线性表链式存储结构的存储空间一般要少于顺序存储结构B、线性表链式存储结构与顺序存储结构的存储空间都是连续的C、线性表链式存储结构的存储空间可以是连续的,也可以是不连续的D、以上说法均错误标准答案:C知识点解析:线性表的顺序存储结构具备如下两个基本特征:(1)线性表中的所有元素所占的存储空间是连续的;(2)线性表中各数据元素在存储空间中是按逻辑顺序依次存放的。用一组任意的存储单元来依次存放线性表的结点,这组存储单元既可以是连续的,也可以是不连续的,甚至是零散分布在内存中的任意位置上的。因此C正确。3、某二叉树共有12个结点,其中叶子结点只有1个。则该二叉树的深度为(根结点在第1层)A、3B、6C、8D、12标准答案:D知识点解析:二叉树中,度为0的节点数等于度为2的节点数加1,即n2=n0-1,叶子节点即度为0,n0=1,则n2=0,总节点数为12=n0+n1+n2=1+n1+0,则度为1的节点数n1=11,故深度为12,选D。4、对长度为n的线性表作快速排序,在最坏情况下,比较次数为A、nB、n-1C、n(n-1)D、n(n-1)/2标准答案:D知识点解析:快速排序最坏情况就是每次选的基准数都和其他数做过比较,共需比较(n-1)+(n-2)+…+1=n(n-1)/2,选D。5、结构化程序设计中,下面对goto语句使用描述正确的是A、禁止使用goto语句B、使用goto语句程序效率高C、应避免滥用goto语句D、以上说法均错误标准答案:C知识点解析:结构化程序设计中,要注意尽量避免goto语句的使用,故选C。6、下面不属于软件测试实施步骤的是A、集成测试B、回归测试C、确认测试D、单元测试标准答案:B知识点解析:软件测试主要包括单元测试、集成测试、确认测试和系统测试。7、下面不属于软件需求分析阶段主要工作的是A、需求变更申请B、需求分析C、需求评审D、需求获取标准答案:A知识点解析:需求分析阶段的工作可概括为4个方面:①需求获取。②需求分析。③编写需求规格说明书。④需求审评。8、一般情况下,当对关系R和S进行自然连接时,要求R和S含有一个或者多个共有的A、记录B、行C、属性D、元组标准答案:C知识点解析:自然连接是一种特殊的等值连接,它满足下面的条件:①两关系间有公共域;②通过公共域的等值进行连接,选C。9、A、选择B、差C、交D、并标准答案:B知识点解析:关系T是关系R的一部分,并且是关系R去掉R和S相同的元素,符合差操作。10、有表示公司和职员及工作的三张表,职员可在多家公司兼职。其中公司C(公司号,公司名,地址,注册资本,法人代表,员工数),职员S(职员号,姓名,性别,年龄,学历),工作W(公司号,职员号,工资),则表W的键(码)为A、公司号,职员号B、职员号,工资C、职员号D、公司号,职员号,工资标准答案:A知识点解析:由于职员可以再多加公司兼职,表W的键(码)应为公司关系和职员关系的主码,即公司号和职员号。11、在VisualBasic环境下设计应用程序时,系统能自动检查出的错误是()。A、语法错误B、逻辑错误C、逻辑错误和语法错误D、运行错误标准答案:A知识点解析:VB中系统只能检查出语法错误,不能检查出逻辑错误。故选A。12、下列合法的变量名是()。A、sum-aB、num_9C、print$D、5avg标准答案:B知识点解析:VB中变量的命名规则为:①必须以字母或汉字开头②由字母、汉字、数字或下划线组成③不能使用VB的保留字。变量名sum-a中有-减号,不合法;print是VB保留字,不能作变量名,不合法;5avg不能以数字开头,不合法。故选B。13、有如下语句序列:Dima,bAsIntegerPrintaPrintb执行以上语句序列,下列叙述中错误的是()。A、输出的a值是0B、输出的b值是0C、a是变体类型变量D、b是整型变量标准答案:A知识点解析:任何变量在被声明后都会有一个初始值。一般情况下,数值型变量的初始值为0;字符串变量的初始值为空字符串;变体型变量的初始值为空值,即Null值;布尔型的初始值为假,即False。本题中变量a定义时没有声明数据类型,默认为Variant变体型变量,默认值是Null;变量b定义为整型变量,默认值为0。所以输出a为空白,b为0。故A选项错误。14、以下关于控件数组的叙述中,错误的是()。A、各数组元素共用相同的事件过程B、各数组元素通过下标进行区别C、数组可以由不同类型的控件构成D、各数组元素具有相同的名称标准答案:C知识点解析:控件数组是由类型相同的控件组成,具有相同的名称,用下标Index属性区分各数组元素,它们共用相同的事件过程。故C选项错误。15、表达式12/2\4的值是()。A、1.5B、2C、4D、1标准答案:D知识点解析:运算符除/优先级高于整除、所以先计算/,再计算、结果是1,故选D。16、下列数组定义中错误的是()。A、Dima(-5To-3)B、Dima(3To5)C、Dima(-3To-5)D、Dima(-3To3)标准答案:C知识点解析:定义数组时,数组下标的上界>=下界。故C选项错误。17、设a=2,b=3,c=4,d=5,表达式Nota<=cOr4*c=b^2Andb<>a+c的值是()。A、-1B、1C、TrueD、False标准答案:D知识点解析:计算表达式的值,先计算算术运算符,再计算关系运算符,然后计算逻辑运算符(优先级从高到低为NotAndOr),最后结果为Fasle。故D选项正确。18、鼠标拖放控件要触发两个事件,这两个事件是()。A、DragOver事件和DragDrop事件B、Drag事件和DragDrop事件C、MouseDown事件和KeyDown事件D、MouseUp事件和KeyUp事件标准答案:A知识点解析:当鼠标拖动控件到目标对象上,不松开鼠标时,触发目标对象的DragOver事件;松开鼠标时,就会触发目标对象的DragDrop事件。故选A。19、以下打开VisualBasic菜单编辑器的操作中,错误的是()。A、执行"编辑"菜单中的"菜单编辑器"命令B、执行"工具"菜单中的"菜单编辑器"命令C、单击工具栏中的"菜单编辑器"按钮D、右击窗体,在弹出的快捷菜单中选择"菜单编辑器"命令标准答案:A知识点解析:在"编辑"菜单中没有"菜单编辑器"命令。故A选项错误。20、VisualBasic中的"启动对象"是指启动VisualBasic应用程序时,被自动加载并首先执行的对象。下列关于VisualBasic"启动对象"的描述中,错误的是()。A、启动对象可以是指定的标准模块B、启动对象可以是指定的窗体C、启动对象可以是SubMain过程D、若没有经过设置,则默认的"启动对象"是第一个被创建的窗体标准答案:A知识点解析:VB中启动对象可以是SubMain过程或窗体,不能是标准模块。故A选项错误。21、若要使文本框能够输入多行文本,应该设置的属性是()。A、MultiLineB、WordWrapC、ScrollBarsD、AutoSize标准答案:A知识点解析:文本框控件的MultiLine属性如果设置为False,则在文本框中只能输入单行文本;当设置为True时,可以使用多行文本,即在文本框中输入或输出文本时可以换行,并在下一行接着输入或输出。22、以下关于命令按钮的叙述中正确的是()。A、命令按钮上可以显示图片B、命令按钮能够分别响应单击、双击事件C、程序运行时,不能改变命令按钮上的文字D、若命令按钮的Cancel属性设为True,焦点在其他控件上时,按下回车键与单击该按钮的效果相同标准答案:A知识点解析:按钮控件的Picture属性可以给命令按钮指定一个图形。按钮的标题由属性Caption设置,可以在程序中动态指定。当一个命令按钮的Cancel属性被设置为True时,按ESC键与单击该命令按钮的作用相同。命令按钮能够响应单击事件,但不能响应双击事件。23、如果在框架中画了2个复选框,且框架的Enabled属性被设置为False,2个复选框的Enabled属性被设置为True,则下面叙述中正确的是()。A、2个复选框可用B、2个复选框不可用C、2个复选框不显示D、上述都不对标准答案:B知识点解析:对于框架来说,通常把Enable属性设置为True,这样才能保证框架内的对象是"活动"的。如果把框架的Enable属性设置为False,则其标题变灰,其中的所有对象,包括文本框、命令按钮、复选框等其他对象都会被屏蔽,虽然显示但不可用。24、设窗体上有2个直线控件Line1和Line2,若使两条直线相连接,需满足的条件是()。A、Line1.X1=Line2.X2且Line1.Y1=Line2.Y2B、Line1.X1=Line2.Y1且Line1.Y1=Line2.X1C、Line1.X2=Line2.X1且Line1.Y1=Line2.Y2D、Line1.X2=Line2.X1且Line1.Y2=Line2.Y2标准答案:A知识点解析:直线控件的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。因此A选项正确。25、为了使文本框显示滚动条,除要设置ScrollBars外,还必须设置的属性是()。A、AutoSizeB、AlignmentC、MultilineD、MaxLength标准答案:C知识点解析:为了使文本框显示滚动条,要将ScrollBars的值设置为非0的1、2或3,还要设置Multiline属性为True。26、在窗体上画一个通用对话框,其名称为CommonDialog1,则下列与CommonDialog1.ShowOpen方法等效的语句是()。A、CommonDialog1.Action=1B、CommonDialog1.Action=2C、CommonDialog1.Action=3D、CommonDialog1.Action=4标准答案:A知识点解析:通用对话框的属性Action=1与ShowOpen方法等效,而Action=2则与ShowSave等效。27、已知图片框Picture1中已装入一个图形,为了在不删除图片框的前提下,清除该图形,应采取的正确操作是()。A、在设计阶段选择图片框Picture1,并按Delete键B、在运行期间执行语句Picture1.Picture=LoadPicture("")C、在运行期间执行语句Picture1.Picture=""D、在设计阶段先选中图片框Picture1,再在属性窗口中选择Picture属性,最后按Enter键标准答案:B知识点解析:如果图片框已装入了一个图形,在不删除图片框的前提下要想清除该图形有两种方法。一是在设计阶段在图片框的属性窗口中删除图片框控件Picture属性行后边的"(Bitmap)",另一种方法是在程序运行阶段使用LoadPicture("")装一个空文件,这样也能清除图形。28、窗体上有1个名称为Text1的文本框,1个名称为Timer1的计时器,且已在属性窗口将Timer1的Interval属性设置为2000、Enabled属性设置为False。以下程序的功能是,单击窗体,则每隔2秒钟在Text1中显示一次当前时间。PrivateSubForm_Click()Timer1.EndSubPrivateSubTimer1_Timer()Text1.Text=Time()EndSub为了实现上述功能,应该在横线处填入的内容为()。A、Enabled=TrueB、Enabled=FalseC、Visible=TrueD、Visible=False标准答案:A知识点解析:计时器控件的Interval属性设置为2000,说明计时器事件发生的间隔是2秒,Enable属性设置为False则说明计时器没有激活。根据程序功能,需要在单击窗体时激活计时器,即在窗体单击事件中设置计时器的Enable属性值为True,即Timer1.Enable=True。29、窗体上有一个名称为CD1的通用对话框,一个名称为Command1的命令按钮,相应的事件过程如下:PrivateSubCommand1_Click()CD1.Filter="AllFile|*.*|TextFile|*.txt|Word|*.Doc"CD1.FilterIndex=2CD1.FileName="E:\Test.ppt"CD1.InitDir="E:"CD1.ShowOpenEndSub关于上述程序,以下叙述中正确的是()。A、初始过滤器为"*.*"B、指定的初始目录为"E:\"C、以上程序代码实现打开文件的操作D、由于指定文件类型是.ppt,所以导致打开文件的操作失败标准答案:B知识点解析:通用对话框的FilterIndex属性值表示默认的过滤器,值为2表示初始过滤器为过滤器中的第2个,即"*.txt"。InitDir属性表示打开对话框时的初始目录。ShowOpen方法表示显示打开文件对话框。打开文件通用对话框只是返回选中的文件,具体如何操作文件需要另行编程决定,因此不会导致文件打开失败。30、编写如下程序:PrivateSubCommand1_Click()DimiAsInteger,jAsIntegern=InputBox("输入一个大于1的正整数")Fori=2TonForj=2ToSqr(i)IfiModj=0ThenExitForNextjIfj>Sqr(i)ThenPrintiNextiEndSub该程序的功能是()。A、判断n是否为素数B、输出n以内所有的奇数C、输出n以内所有的偶数D、输出n以内所有的素数标准答案:D知识点解析:假设输入2、4、9进行验证,输入2时程序会输出2,输入4时,程序会输出2、3,可见程序不是判断n是否为素数,所以A不对。由前面验证可知,程序也不是输出n以内的所以奇数或偶数,所以B、C也不对。如果输入9时,程序会输出2、3、5、7,说明程序是输出n以内的所有素数,所以D正确。31、设有如下事件过程:PrivateSubCommand1_Click()Fori=1To5j=iDoPrint"*"j=j-1LoopUntilj=0NextiEndSub运行程序,输出"*"的个数是()。A、5B、15C、20D、25标准答案:B知识点解析:i=1时,输出1个*,i=2时,输出2个*,i=3时,输出3个*,i=4时输出4个*,i=5时输出5个*,因此总共输出*的个数是1+2+3+4+5=15。32、设有如下事件过程:PrivateSubCommand1_Click()Dimaa=Array(3,5,6,3,2,6,5,3,5,4,3,9,4,5,6,3,5)x=0n=UBound(a)Fori=0Tonm=0Forj=0TonIfa(i)=a(j)Thenm=m+1EndIfNextjIfm>xThenx=m:b=a(i)NextiPrintbEndSub运行程序,输出是()。A、2B、3C、5D、9标准答案:B知识点解析:本题程序中内层For循环是统计具有相同值元素的个数,外层循环的功能则是,对数组中的所有元素进行统计,找出第1个具有相同值的元素个数最多的那个元素值。数组组中元素值为3的元素有5个,元素值为5的元素有5个,元素值为6的元素为3个,元素值为2的元素有1个,元素值为4的元素有1个,元素值为9的元素有1个。因此第1个具有相同元素值的最多个的元素值是3。33、窗体上有1个名称为Command1的命令按钮,事件过程如下:PrivateSubCommand1_Click()m=-3.6IfSgn(m)Thenn=Int(m)Elsen=Abs(m)EndIfPrintnEndSub运行程序,并单击命令按钮,窗体上显示的内容为()。A、-4B、-3C、3D、3.6标准答案:A知识点解析:Sgn函数返回参数的符号,参数为负数时返回-1,为0时,返回0,为正数时返回1。所以Sgn(-3.6)返回-1。VisualBasic中把任何非0值都认为是真,以0表示假,因此if语句中将执行n=Int(m)语句。Int函数返回不大于参数的最大整数,Int(-3.6)要返回小于-3.6的整数即是-4,因此n=-4。34、设有如下程序:PrivateSubForm_Click()num=InputBox("请输入一个实数")p=InStr(num,".")Ifp>0ThenPrintMid(num,p+1)ElsePrint"END"EndIfEndSub运行程序,单击窗体,根据提示输入一个数值。如果输入的不是实数,则程序输出"END";否则()。A、用字符方式输出该实数B、输出该实数的整数部分C、输出该实数的小数部分D、去掉实数中的小数点,保留所有数码输出标准答案:C知识点解析:InStr函数查找小数点在输入的实数中的位置,如果找不到将返回0。Mid函数一般有3个参数,从第2个参数指定的位置开始,在第1个参数字符串中截取第3个参数指定长度的字符,第3个参数可以省略,这时就一直截取到字符串尾部。因此程序的意思就是如果输入的是实数(p>0即说明找到了小数点,是实数)就输入该实数的小数部分,否则输出"END"。因此选项C正确。35、编写如下程序:PrivateSubCommand1_Click()DimxAsInteger,yAsIntegerx=InputBox("输入第一个数")y=InputBox("输入第二个数")Callf(x,y)Printx,yEndSubSubf(aAsInteger,ByValbAsInteger)a=a*2x=a+bb=b+100EndSub程序运行后,单击命令按钮Command1,并输入数值10和15,则输出结果为()。A、10115B、20115C、3515D、2015标准答案:D知识点解析:程序中过程f的参数a默认为按址传递,参数b指定按值传递,因此调用f(x,y)时,x的值会受到影响,y的值不会。程序中输入10和15,则x=10,y=15。调用f(x,y),在过程中a=a*2,即a=10*2=20,变量x是过程f中的局部变量,没有用处可不用理会,b=b+100,即b=15+100=115。a的值即按钮单击事件中变量x的值,因此x=20,而y的值仍是原来的值15,因此Printx,y输出2015。36、编写如下程序:PrivateSubCommand1_Click()Dimstr1AsString,str2AsStringstr1=InputBox("输入一个字符串")subfstr1,str2Printstr2EndSubSubsubf(s1AsString,s2AsString)DimtempAsStringStaticiAsIntegeri=i+1temp=Mid(s1,i,1)Iftemp<>""Thensubfs1,s2s2=s2&tempEndSub程序运行后,单击命令按钮Command1,且输入"abcdef",则输出结果为()。A、afbecdB、cdbeafC、fedcbaD、adbecf标准答案:C知识点解析:程序中过程subf的两个参数都默认按址传递,其内部定义的变量i为Static即静态变量,在过程调用时它会保留上次的值。这个过程的功能是通过递归调用自己依次取出参数1中即s1中的字符连接在s2的尾部,即使s1的字符串倒序后存入s2中。程序中输入了abcdef,则输出结果为fecdba。37、窗体上有一个名称为Command1的命令按钮,一个名称为Text1的文本框。编写如下程序:PrivateSubCommand1_Click()DimxAsIntegerx=Val(InputBox("输入数据"))Text1=Str(x+fun(x)+fun(x))EndSubPrivateFunctionfun(ByRefnAsInteger)IfnMod3=0Thenn=n+nElsen=n*nEndIffun=nEndFunction对于上述程序,以下叙述中错误的是()。A、语句fun=n有错,因为n是整型,fun没有定义类型B、运行程序,输入值为5时,文本框中显示655C、运行程序,输入值为6时,文本框中显示42D、ByRef表示参数按址传递标准答案:A知识点解析:过程fun的功能是将传入的值运算后返回,当传入数值为3的整数倍时返回该值的2倍,否则返回该值的平方。过程Fun的参数指定为ByRef方式,即按址传递,因此会影响实参的值。Str函数是将数值转换为字符串。过程fun定义时没有指明返回类型因此默认为Variant类型,它可以表示任何值,因此A)选项的说法不正确。38、设工程文件中包名称分别为Form1、Form2的两个窗体,且Form1的菜单属性设置如下:窗体Form1中的程序如下:DimFlagAsBooleanPrivateSubForm_Load()Flag=TrueEndSubPrivateSubmnu1_Click(indexAsInteger)IfIndex=1ThenIfFlag=TrueThenForm2.showmnu1(1).Caption="隐藏窗体2"Flag=FalseElseForm2.Hidemnu1(1).Caption="显示窗体2"Flag=TrueEndIfEndIfIfIndex=2ThenEndEndSub关于上述程序,以下叙述中错误的是()。A、Index属性的值可以用来区分控件数组元素B、Index为1的菜单项的标题可能会改变C、两个名称均为Mnu1的菜单项构成一个控件数组D、语句Form2.Hide将Form2卸载标准答案:D知识点解析:程序中菜单Mnu1是一个控件数组,它们以Index属性值作为数组下标来区分各元素。在菜单单击事件中,Flag值为真时,显示Form2,同时把索引为1的菜单项标题改为"隐藏窗体2",然后把Flag标志设为假;当Flag值为假时,隐藏Form2,同时把索引为1的菜单项标题改为"显示窗体2",然后把Flag标志设为真。窗体Hide方法,只是将窗体隐藏,并没有从内容中卸载。因此D选项错。39、设在当前目录下有一个名为"file.txt"的文本文件,其中有若干行文本。编写如下程序:PrivateSubCommand1_Click()Dimch$,asciiAsIntegerOpen"file.txt"ForInputAs#1WhileNotEOF(1)LineInput#1,chascii=toascii(ch)PrintasciiWendClose#1EndSubPrivateFunctiontoascii(mystrAsString)AsIntegern=0Fork=1ToLen(mystr)n=n+Asc(Mid(mystr,k,1))Nextktoascii=nEndFunction程序的功能是()。A、按行计算文件中每行字符的ASCII码之和,并显示在窗体上B、计算文件中所有字符的ASCII码之和,并显示在窗体上C、把文件中所有文本行按行显示在窗体上D、在窗体上显示文件中所有字符的ASCII码值标准答案:A知识点解析:过程toascii的功能是依次取出传入字符串中的每个字符,用Asc函数将这个字符转换为相应的ASCII码值,通过For循环将这些值累加。累加值由过程名返回。Click事件中以顺序输入方式打开file.txt文件,即以读取方式打开文件。While循环的结束条件是到达文件尾部,在循环体中,LineInput#语句读取文件中的一行数据存入变量ch中,然后以ch为参数调用过程toascii,即计算这一行字符中所有字符的ASCII码值的和,返回值赋给变量ascii,在窗体上输出ascii的值。所以While循环结束时,将在窗体上显示输出file.txt中每一行数据的ASCII码值的和。因此答案为A。40、设有如下函数:FunctionDelSpace(chAsString)AsIntegerDimn%,st$,c$st=""n=0Fork=1ToLen(ch)c=Mid(ch,k,1)Ifc<>""Thenst=st&cElsen=n+1EndIfNextkch=stDelSpace=nEndFunction函数的功能是()。A、统计并返回字符串ch中字符的个数B、删除字符串ch中的空格符,返回删除字符的个数C、统计并返回字符串ch中非空格字符数D、删除字符串ch中除空格符外的其他字符,返回删除字符的个数标准答案:B知识点解析:过程中对传入的字符串的字符一个个取出,判断如果不是空格则依次连接到一个字符串变量中,如果是空格则计数加1。最后,返回不包含空格的字符串和空格的个数。因此选项B正确。国家二级VB机试(选择题)模拟试卷第3套一、选择题(本题共40题,每题1.0分,共40分。)1、下列链表中,其逻辑结构属于非线性结构的是A、二叉链表B、循环链表C、双向链表D、带链的栈标准答案:A知识点解析:在定义的链表中,若只含有一个指针域来存放下一个元素地址,称这样的链表为单链表或线性链表。带链的栈可以用来收集计算机存储空间中所有空闲的存储结点,是线性表。在单链表中的结点中增加一个指针域指向它的直接前件,这样的链表,就称为双向链表(一个结点中含有两个指针),也是线性链表。循环链表具有单链表的特征,但又不需要增加额外的存贮空间,仅对表的链接方式稍做改变,使得对表的处理更加方便灵活,属于线性链表。二叉链表是二叉树的物理实现,是一种存储结构,不属于线性结构。答案为A选项。2、设循环队列的存储空间为Q(1:35),初始状态为front=rear=35。现经过一系列入队与退队运算后,front=15,rear=15,则循环队列中的元素个数为A、15B、16C、20D、0或35标准答案:D知识点解析:在循环队列中,用队尾指针rear指向队列中的队尾元素,用排头指针front指向排头元素的前一个位置。在循环队列中进行出队、入队操作时,头尾指针仍要加1,朝前移动。只不过当头尾指针指向向量上界时,其加1操作的结果是指向向量的下界0。由于入队时尾指针向前追赶头指针,出队时头指针向前追赶尾指针,故队空和队满时,头尾指针均相等。答案为D选项。3、下列关于栈的叙述中,正确的是A、栈底元素一定是最后入栈的元素B、栈顶元素一定是最先入栈的元素C、栈操作遵循先进后出的原则D、以上说法均错误标准答案:C知识点解析:栈顶元素总是后被插入的元素,从而也是最先被删除的元素;栈底元素总是最先被插入的元素,从而也是最后才能被删除的元素。栈的修改是按后进先出的原则进行的。因此,栈称为先进后出表,或"后进先出"表,所以选择C。4、在关系数据库中,用来表示实体间联系的是A、属性B、二维表C、网状结构D、树状结构标准答案:B知识点解析:关系模型实体间的联系采用二维表来表示,简称表。选项C为网状模型实体间的联系,选项D为层次模型实体间的联系,选项

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论