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

下载本文档

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

文档简介

国家二级(VB)机试模拟试卷19(共9套)(共382题)国家二级(VB)机试模拟试卷第1套一、选择题(本题共40题,每题1.0分,共40分。)1、为把圆周率的近似值3.14159存放在变量pi中,应该把变量pi定义为()。A、DimpiAsIntegerB、Dimpi(7)AsIntegerC、DimpiAsSingleD、DimpiAsLong标准答案:C知识点解析:单精度Single或双精度Double型的变量能够保存浮点型小数,整型Integer和长整型Long的变量只能保存整型数据。本题中圆周率为3.14159,小数,可用定义一个Single或Double型变量来保存。故选C。2、窗体上有1个名为List1的列表框,其中已经输入了若干个项目(如图3所示);还有2个文本框,名称分别为Text1、Text2,1个名称为Commandl的命令按钮,并有以下程序。PrivateSubCommand1Click()DimstrAsString,SAsString,kAsIntegers=Text1:str=“”Fork=List1.ListCount.1To0Step—1IfInStr(List1.List(k),s)>0Thenstr=str&List1.List(k)&“”EndIfNextkIfstr=“”ThenText2=“没有匹配项目”ElseText2=strEndIfEndSub程序运行时,在Text1中输入”京”,单击命令按钮,则在Text2中显示的内容是()。A、京B、北京南京C、南京北京D、没有匹配的项目标准答案:C知识点解析:本题考查循环程序的分析以及列表框属性的应用。函数InStr(IAstl.List(k),s)的作用是在Listl.IAst(k)中从头开始寻找s,找不到就返回0,否则返回s在Listl.IAst(k)中的位置。整个循环的功能是,从列表框中最后一个列表项开始寻找含有与Textl中字符串相同的子串,如果存在相同的子串,把Listl.List(k)全部连接到str中,并显示在Text2中。3、已知AS=“Welcome”,下列语句操作能够正确执行的是()。A、Label1.Height=ASB、Labell.Caption=ASC、Label1.Enabled--ASD、Label1.Visible=AS标准答案:B知识点解析:本题考查标签的各种属性。标签的Height属性值为数值型,不能赋字符串型值,而Enabled和Visible为布尔型,只有Caption属性值为字符串型。4、在窗体上有一个文本框Text1和一个标签Label1,要求运行程序时,在文本框中输入的内容立即显示在标签中(如图1所示),则空白处应填入的内容是()。PrivateSubText1_______()Label1.Caption=Text1.TextEndSubA、GetFocusB、ClickC、ChangeD、LostFOCBS标准答案:C知识点解析:本题考查文本框的事件。文本框的GetFocus事件为文本框获得焦点时触发一次,而单击文本框时触发一次Click事件,Change事件是每次文本框中的文本发生改变时触发的事件,而LostFocus事件是文本框失去焦点时触发的事件。5、软件设计中划分模块的一个准则是()。A、低内聚低耦合B、高内聚低耦合C、低内聚高耦合D、高内聚高耦合标准答案:B知识点解析:一般较优秀的软件设计,应尽量做到高内聚,低耦合,即减弱模块之间的耦合性和提高模块内的内聚性,有利于提高模块的独立性。6、如果一个直线控件在窗体上呈现为一条垂直线,则可以确定的是()。A、它的Y1、Y2属性的值相等B、它的X1、X2属性的值相等C、它的x1、Y1属性的值分别与X2、Y2属性的值相等D、它的X1、X2属性的值分别与Y1、Y2属性的值相等标准答案:B知识点解析:Line控件有四个属性分别为X1、Y1,X2、Y2,分别代表两个端点的横坐标和纵坐标,如果显示为一条纵线,则意味着两个端点的横坐标一致,即X1=X2。7、下面不能在信息框中输出“VB”的是()。A、MsgBox"VB"B、x=MsgBox("VB")C、MsgBox("VB")D、CallMsgBox"VB"标准答案:D知识点解析:Msgbox的功能:显示消息提示框,存埘话框中显示提示消息,等待用户单击按钮,单击不同的按钮返回不同的整数。MsgBox函数格式:变量=MsgBox(<提示内容>[,样式][,标题]),注意MsgBox函数带括号,有返回值;MsgBox语句格式:MsgBox(<提示内容>[,样式][,标题]),有无括号都可以,无返回值。选项D中用Call语句调用MsgBox函数,要符合Call语句的语法规则:Call函数名(实参表),缺少括号,应该为CallMsgBox("VB"),语法才正确。故D选项不能输出"VB",会出错。8、一个工作人员可以使用多台计算机,而一台计算机可被多个人使用,则实体工作人员与实体计算机之间的联系是()。A、一对一B、一对多C、多对多D、多对一标准答案:C知识点解析:因为一个人可以操作多个计算机,而一台计算机又可以被多个人使用,所以两个实体之间是多对多的关系。9、以下叙述中错误的是()。A、VisualBasic是事件驱动型可视化编程工具B、VisualBasic应用程序不具有明显的开始和结束语句C、VisualBasic工具箱中的所有控件都具有宽度(Width)和高度(Height)属性D、VisualBasic中控件的某些属性只能在运行时设置标准答案:C知识点解析:VB工具箱中不是所有的控件都具有宽度和高度属性,比如定时器控件Timer、直线控件Line就没有。故C选项错误。10、关于菜单设计,下列叙述中错误的是()。A、弹出式菜单也在菜单编辑器中定义B、在菜单的标题栏中,“&”所引导的字母指明了访问该菜单项的访问键C、程序运行过程中,可以重新设置菜单的Visible属性D、在同一窗体的菜单项中,不允许出现标题相同的菜单项标准答案:D知识点解析:本题考查菜单设计。VB中所有的菜单都是在菜单编辑器中定义的。定义菜单时“&”后面的字母为访问该菜单项的访问键,每个菜单项都要有惟一的名字,在程序运行中可以根据名字来更改菜单的Enabled、Visible等属性。不同名称的菜单的标题可以相同。11、表达式Sgn(0.25)的值是()。A、-1B、0C、1D、0.5标准答案:C知识点解析:Sgn函数是符号函数,正数返回1,负数返回-1,0返回0。本题中0.25是正数,所以返回1,故C选项正确。12、组合框是文本框和()特性的组合。A、复选框B、标签C、列表框D、目录列表框标准答案:C知识点解析:本题考查组合框。组合框控件(ComboBox)是将文本框和列表框的功能结合在一起,用户可以在列表中选择某项(注:只能选取一项),或在编辑区域中直接输入文本内容来选定项目。13、设a=“VisualBasic”,下面语句中可使b=“Basie”的是()。A、b=Left(a,8)B、b=Mid(a,8,5)C、b=Right(a,8)D、b=Left(a,8,5)标准答案:B知识点解析:考查字符串处理函数。字符串函数Left以及Right表示从主串的左边或者右边开始取连续个字符构成子串,函数有两个参数,第一个参数为字符串,第二个参数为整数。而Mid函数表示从主串中的某个字符开始连续取若干个字符构成子串。14、在正确安装VisualBasic6.0后,可以通过多种方式启动VisualBasic6.0。以下方式中,不能启动VisualBasic6.0的是()。A、通过“我的电脑”找到vb6.exe,双击该文件名B、进入DOS方式,执行vb6.exe文件C、通过“开始”菜单中的“运行”命令D、通过“开始”菜单中的“程序”命令标准答案:B知识点解析:本题考查VB6.0环境的启动。正确安装了VB以后,最常用的启动模式是通过“开始”菜单,选择“程序”命令,启动VisualBasic的程序;如果“开始”菜单没“启动”文件,则可在硬盘中寻找VB安装文件夹,找到VB6.exe可执行文件,双击运行;如果了解运行路径,则可在“运行”中直接输入可执行文件名,即可运行。注意:VB6.exe是Windows下的应用软件,不能脱离Windows操作系统运行。15、窗体上有文本框Text1和一个菜单,菜单标题、名称见表,结构如图2所示。要求程序执行时单击“保存”菜单项,则把其标题显示在Text1文本框中,下面可实现此功能的事件过程是()。A、PfivateSubsave_Click()save—Click()Textl.Text=file.save.CaptionEndSubB、PrivateSubsaveClick()Textl.Text=save.CaptionEndSubC、PrivateSubfileClick()Textl.Text=file.save.CaptionEndSubD、PrivateSubfileClick()Textl.Text=save.CaptionEndSub标准答案:B知识点解析:本题考查菜单事件。菜单建立以后,对于每个菜单项要进行编写程序,才可以进行处理,单击“保存”命令时,代码窗体自动出现事件过程:PrivateSubsave_Click()EndSub在程序之间加上Text1的Text属性改变代码即可。16、下列关于二叉树的叙述中,正确的是()。A、叶子结点总是比度为2的结点少一个B、叶子结点总是比度为2的结点多一个C、叶子结点数是度为2的结点数的两倍D、度为2的结点数是度为1的结点数的两倍标准答案:B知识点解析:根据二叉树的基本性质3:在任意一棵二叉树中,度为0的叶子结点总是比度为2的结点多一个。所以选择B。17、在窗体上画一个命令按钮(名称为Command1),并编写如下代码:FunctionFun1(ByValaAsInteger,bAsInteger)AsIntegerDimtAsIntegert=a-bb=t+aFun1=t+bEndFunctionPrivateSubCommand1_Click()DimxAsIntegerx=10PrintFun1(Fun1(x,(Fun1(x,x-1))),x-1)EndSub程序运行后,单击命令按钮,输出结果是()。A、10B、0C、11D、21标准答案:B知识点解析:本题是过程的嵌套调用,过程嵌套调用时要先计算最内层的过程,然后由里向外执行。因此Fun1(Fun1(x,(Fun1(x,x-1))),x-1)执行过程如下:先执行Fun1(x,x-1),由于形参a是按值传递,因此不会影响x的值,x=10,即Fun1(10,9)。t=1,b=1+10=11,则函数返回值为1+11=12。再执行Fun1(x,(Fun1(x,x-1))),由于内层过程返回12,因此又可写成Fun1(x,(12)),由于x仍为原值,因此过程即Fun1(10,12)。t=-2,b=-2+10=8,则函数返回值为-2+8=6。最后执行Fun1(Fun1(x,(Fun1(x,x-1))),x-1),即Fun1(6,x-1),由于x仍为原值,因此过程即为Fun1(6,9)。t=-3,b=-3+6=3,则函数返回值为-3+3=0。18、窗体上有一个名称为Command1的命令按钮,事件过程如下:PrivateSubCommand1_Click()Dimarr_x(5,5)AsIntegerFori=1To3Forj=2To4arr_x(i,j)=i*jNextjNextiPrintarr_x(2,1);arr_x(3,2);arr_x(4,3)EndSub运行程序,并单击命令按钮,窗体上显示的内容为()。A、060B、260C、0612D、2612标准答案:A知识点解析:程序定义了一个二维数组,然后利用For循环对其中部分元素赋值,没有得到赋值的元素值为0。赋值元素的第1维范围是1~3,第2维范围是2~4。因此在输出语句中,arr_x(2,1)第2维不在赋值范围所以此元素值=0,arr_x(3,2)两维都在赋值范围内所以此元素值为3]。19、关系数据模型的三个组成部分中不包括()。A、关系的完整性约束B、关系的数据操纵C、关系的数据结构D、关系的并发控制标准答案:D知识点解析:关系数据模型的三个组成部分:数据结构,操作集合(数据操纵),完整性约束。故本题答案为D选项。20、组合框兼有两种控件的特性,这两种控件是()。A、标签和文本框B、列表框和文本框C、复选框和单选按钮D、标签和列表框标准答案:B知识点解析:组合框(ComboBox)是由组合列表框和文本框的特性而成的控件。也就是说组合框是一种独立的控件,但它兼有列表框和文本框的功能。它可以像列表框一样,让用户通过鼠标选择所需要的项目,也可以像文本框一样,用键人的方式选择项目。故B选项叙述正确。21、设窗体上有一个水平滚动条HScroll1和一个命令按钮Command1,及下面的事件过程:PrivateSubForm_Load()HScroll1.Min=0HScroll1.Max=100EndSubPrivateSubCommand1_Click()HScroll1.Value=70EndSub程序运行时单击命令按钮,则滚动条上滚动块位置的图示是()。A、

B、

C、

D、

标准答案:C知识点解析:题目中程序运行时设置了水平滚动条所能表示的最小值为0,能表示的最大值为100,当单击命令按钮时,设置水平滚动条的当前位置为70,即在水平滚动条中部偏右的位置,按各个选项图形的所示,C选项的图示与题目相符。22、以下关于VB文件的叙述中,正确的是A、标准模块文件的扩展名是.frmB、一个.vbg文件中可以包括多个.vbp文件C、一个.vbp文件只能含有一个标准模块文件D、类模块文件的扩展名为.bas标准答案:B知识点解析:标准模块文件的扩展名是.bas;工程组文件的扩展名是.vbg,由多个工程文件组成;工程文件的扩展名是.vbp,可以含有多个标准模块文件;类模块文件的扩展名为.cls。23、下列关于控件数组的叙述中,正确的是()。A、控件数组可以由不同类型的控件组成B、控件数组元素的最小下标值为1C、在设计阶段,可以改变控件数组元素的Index属性值D、控件数组的名字由Caption属性指定标准答案:C知识点解析:控件数组必须用同类型的控件组成。最小下标为0,控件数组的名字由Name属性指定。选C。24、窗体上有一个名称为Command1的命令按钮,其单击事件过程及相关的代码如下:PrivateSubCommand1_Click()DimxAsInteger,yAsIntegerx=Val(InputBox("输入整数"))y=Val(InputBox("输入整数"))PrintStr(fun(x,y)+x+y)EndSubPrivateFunctionfun(ByRefmAsInteger,ByValnAsInteger)m=m*mn=n+nfun=m+nEndFunction运行程序,单击命令按钮时,出现输入对话框,分别输入3、5,则窗体上显示的是A、27B、28C、33D、38标准答案:C知识点解析:函数fun执行后,x值被改变,y值不变。即x=9,y=5;计算得结果为33,选C)。25、在窗体上有一个名称为Commandl的命令按钮,并编写有如下事件过程:PrivateSubCommandl_Click()Move500,500EndSub程序执行时,单击命令按钮,实现的功能是()。A、命令按钮移动到距窗体左边界、上边界各500的位置B、命令按钮向左、上方向各移动500C、窗体移动到距屏幕左边界、上边界各500的位置D、窗体向左、上方向各移动500标准答案:C知识点解析:本题考查Move方法。Move方法移动窗体或控件,并可改变其大小,具体的格式为:[对象.]Move左边距离[,上边距离[,宽度[,高度]]],其中对象可以是除时钟、菜单外的所有控件,省略时默认为窗体。Move方法的功能是:把对象从当前位置移动到左上角坐标为(左边距离,上边距离)的位置,同时根据高度和宽度参数来改变控件的高度和宽度。26、需求分析阶段的任务是()。A、软件开发方法B、软件开发工具C、软件开发费用D、软件系统功能标准答案:D知识点解析:需求分析是软件定义时期的最后一个阶段,它的基本任务就是详细调查现实世界要处理的对象,充分了解原系统的工作概况,明确用户的各种需求,然后在这些基础上确定新系统的功能。27、下列可以打开立即窗口的操作是()。A、Ctrl+DB、Ctrl+EC、Ctrl+FD、Ctrl+G标准答案:D知识点解析:快捷键打开的是添加文件对话框;快捷键打开的是菜单编辑器对话框;快捷键不打开任何对话框;快捷键打开的是立即窗口。28、设有如下程序:PrivateSubForm_Click()DimxAsInteger,pAsIntegerx=InputBox("请输入一个整数")p=fee(x)PrintpEndSubFunctionfee(aAsInteger)Ifa<20Theny=aElsey=20+aEndIffee=yEndFunction运行程序,单击窗体,在输入对话框中输入20,单击"确定"按钮,输出结果为A、10B、20C、30D、40标准答案:D知识点解析:程序主要是从输入对话框中得到一整数x,并将x作为参数,带入fee(x)函数,返回p值,并输出。其中InputBox是VisualBasic函数,功能是弹出一个对话框,在其中显示提示,等待用户输入文字并按下按钮,然后返回用户输入的文字,将返回用户输入的数字存储在x中;fee(x)为题目的一个函数。Functionfee(aAsInteger)中参数为整数a,当a<20时,返回值为a,否则返回值为20+a。故可知当输入对话框中输入20时,x=20,执行p=fee(x)=20+20=40。故选项D正确。29、为了在按下回车键时执行某个命令按钮的事件过程,需要把该命令按钮的()属性设置为True。A、ValueB、CancelC、EnabledD、Default标准答案:D知识点解析:本题考查控件的常见属性。对于所有具有Cancel属性的控件,Cancel表示该控件是否当按下“Esc”键时,执行某个事件过程。Enabled表示控件是否可以使用,命令按钮的默认属性为Default,表示当按下回车键的时候,执行某个命令按钮的事件过程。30、下列关于数据库设计的叙述中,正确的是()。A、在需求分析阶段建立数据字典B、在概念设计阶段建立数据字典C、在逻辑设计阶段建立数据字典D、在物理设计阶段建立数据字典标准答案:A知识点解析:数据字典是在需求分析阶段建立,在数据库设计过程中不断修改、充实和完善的。31、下列叙述中正确的是A、每一个结点有两个指针域的链表一定是非线性结构B、所有结点的指针域都为非空的链表一定是非线性结构C、循环链表是循环队列的链式存储结构D、线性结构的存储结点也可以有多个指针标准答案:D知识点解析:一个非空的数据结构如果满足以下两个条件:有且只有一个根结点;每一个结点最多有一个前件,也最多有一个后件,则称为线性结构,在数据结构中习惯称为线性表。双向链表结点具有两个指针域,属于线性结构,A选项错误。循环链表所有结点的指针域都为非空,属于线性结构,B选项错误。循环链表是链表,循环队列属于队列,队列只能在队尾入队,在排头退队,链表可以在任何位置插入、删除,C选项错误。双向链表结点具有多个指针域,D选项正确。32、下面描述中不属于数据库系统特点的是A、数据共享B、数据完整性C、数据冗余度高D、数据独立性高标准答案:C知识点解析:数据库系统的特点为高共享、低冗余、独立性高、具有完整性等,C错误。33、长整型常数的类型说明符为A、%B、#C、&D、@标准答案:C知识点解析:%:整型,#:双精度实型,&:长整型,@:货币型。34、一个栈的初始状态为空。现将元素1、2、3、4、5、A、B、C、D、E依次入栈,然后再依次出栈,则元素出栈的顺序是()。A、12345ABCDEB、EDCBA54321C、ABCDE12345D、54321EDCBA标准答案:B知识点解析:栈是先进后出的原则组织数据,所以入栈最早的最后出栈,所以选择B。35、编写如下程序:PrivateSubCommand1_Click()DimxAsString,yAsStringx=Right("abcd",2)y=Mid("dcba",2,3)Ifx>yThenPrintx+yElsePrinty+xEndIfEndSub程序运行后,单击命令按钮Command1,输出结果为A、cdcbaB、cbacdC、cbacdD、cbcd标准答案:A知识点解析:Right("abcd",2)从字串的右边截取2个字符"cd",Mid("dcba",2,3)从第二个字符开始截取3个字符"cba"然后判断x和y的大小。选A)。36、若要清除列表框控件中的所有列表项,应该使用的方法是A、RemoveItemB、ClearC、DeleteD、Refresh标准答案:B知识点解析:Clear方法用来清除列表框中的全部内容,格式为:列表框.Clear。37、某系统总体结构图如下图所示:该系统总体结构图的深度是()。A、7B、6C、3D、2标准答案:C知识点解析:根据总体结构图可以看出该树的深度为3,比如:XY系统--功能2--功能2.1,就是最深的度数的一个表现。38、执行下列语句:strInput=InputBox("请输入字符串","字符串对话框","字符串")将显示输入对话框。此时如果直接单击"确定"按钮,则变量strInput的内容是()。A、请输入字符串B、字符串对话框C、字符串D、空字符串标准答案:C知识点解析:InputBox函数的格式:变量名=InputBox("提示信息"[,"标题栏显示信息"][,"输入文本框中默认值"][,X][,Y])InputBox函数的功能:在一输入对话框中显示提示,等待用户在输入文本框中输入数据,然后按下按钮,返回文本框内容。如果用户单击"确定"按钮,则InputBox函数把输入文本框的内容作为一字符串返回;如果没有输入数据,按"确定"按钮,则返回的是空字符串;如果按"取消"按钮,则不管输入框有没有输入数据,都返回空字符串。根据以上所述,运行程序,会出现一输入对话框,在上面有"请输入字符串"提示信息,标题栏中显示"字符串对话框",输入文本框中有默认值"字符串",单击"确定"按钮后,文本框中的"字符串"三个字作为字符串返回给strInput变量。所以strInput变量的内容是"字符串",故选C。39、窗体上有一个名称为Command1的命令按钮,一个名称为Text1的文本框,其Text属性值为"VBProgramming"。运行程序后,选中其中的"VB",并执行如下事件过程:PrivateSubCommand1_Click()Text1.SelText="C++"EndSub则文本框中显示的内容为A、VBB、VBProgrammingC、文本框被清空D、C++Programming标准答案:D知识点解析:文本框SelText属性返回或设置包含当前所选择文本的字符串;如果没有字符被选中,则为零长度字符串("")。由题意知,选中"VB",返回"C++",所以结果为"C++Programming"。40、下面叙述中错误的是()。A、软件测试的目的是发现错误并改正错误B、对被调试的程序进行“错误定位”是程序调试的必要步骤C、程序调试通常也称为DebugD、软件测试应严格执行测试计划,排除测试的随意性标准答案:A知识点解析:软件测试的目的是为了发现错误而执行程序的过程,并不涉及改正错误,所以选项A错误。程序调试的基本步骤有:错误定位、修改设计和代码,以排除错误、进行回归测试,防止引进新的错误。程序调试通常称为Debug,即排错。软件测试的基本准则有:所有测试都应追溯到需求、严格执行测试计划,排除测试的随意性、充分注意测试中的群集现象、程序员应避免检查自己的程序、穷举测试不可能、妥善保存测试计划等文件。二、基本操作题(本题共2题,每题1.0分,共2分。)请根据以下各小题的要求设计VisualBasic应用程序(包括界面和代码)。41、在名称为Form1的窗体上画一个名称为CD1的通用对话框,通过属性窗口设置CD1的初始路径为C:\,默认的文件名为None,标题为“保存等级考试”,如图2所示。注意:存盘时必须存放在考生文件夹下,工程文件名为sjt1.vbp,窗体文件名为sjt1.frm。标准答案:[操作步骤]步骤1:新建一个“标准。EXE”工程,选择[工程]→[部件]命令,在弹出的“部件”对话框的列表中选中“MicroSoftCommonDiMogControl6.0”项目,单击“确定”按钮。步骤2:在窗体Form1上画一个通用对话框,其相关属性设置如表12—7所示。步骤3:编写Form1的Iroad事件,加入下面的代码:CD1.ShowSave步骤4:按要求将文件保存至考生文件夹中。知识点解析:通用对话框的InitDir属性用于为打开或另存为对话指定初始的目录,如果此属性没有指定,则使用当前目录。通用对话框的初始路径由InitDir属性设置,默认文件名由FileName属性设置,标题由DialogTitle属性设置。42、在名称为Form1的窗体上设计一个菜单。要求在窗体上添加名为menu0,标题为“菜单命令”的主菜单,再添加两个名称分别为“menu1”、“menu2”,标题分别为“不可用菜单项”、“上一菜单项可用”的子菜单,并且使程序运行时,menu1子菜单不可用,menu2子菜单已经选中(运行时的效果如图3所示)。再编写适当的事件过程,使得程序运行时,单击“上一菜单项可用”,则“不可用菜单项”变为黑色(可用)。要求程序中不得使用变量,且只有一条语句。注意:存盘时必须存放在考生文件夹下,工程文件名为sit2.vbp,窗体文件名为sit2.Frm。标准答案:[操作步骤]步骤1:新建一个“标准EXE”工程,打开VB菜单设计器设计菜单,各菜单项及属性设置如表12—8所示。步骤2:打开代码编辑窗口,编写“上一菜单项可用”命令的Click事件过程。参考代码:PrivateSubmenu2_Click()menu1.Enabled=TrueEndSub步骤3:按要求将文件保存至考生文件夹中。知识点解析:①VB中的菜单是通过菜单编辑器来设计的。菜单编辑器中的基本设置项有:“标题”项,对应出现在菜单中的显示内容;“名称”项,系统识别菜单项的唯一关键字(不能重复);“索引”项,用于设置菜单数组中各元素的索引号;“快捷键”项,是一个下拉列表框,用于设置菜单项的快捷键;“帮助上下文”项,设置当鼠标移动到某菜单项上按<Fl>键时显示的帮助信息在帮助文件中的对应位置;Visible(可见)项,用于设置控件或菜单项在程序运行时是否可见,值为True表示可见,值为False表示不可见;Enabled(有效)项,用于设置控件或菜单项在程序运行时是否有效,值为True时表示有效,值为False时表示无效(显示为灰色)。通过编辑按钮区的七个按钮可对菜单进行添加、插入、删除、提升(设置为上一级菜单)、缩进(设置为下一级菜单)、上移、下移等操作。②文本框的Text属性用于设置或返回其显示的文本内容。本题原程序设计思路:在“上一菜单项可用”命令的单击事件过程中,通过语句设置“不可用菜单项”命令的Enabled属性值为True。三、简单应用题(本题共1题,每题1.0分,共1分。)43、在考生文件夹下有一个工程文件Sjt4.vbp,相应的窗体文件为sjt4.frm,在窗体上有一个文本框和一个命令按钮。程序运行后,单击命令按钮,即可计算出1一1000范围内能被7整除或被5整除的整数的个数,并显示在文本框中。在窗体的代码窗口中,已给出了部分程序,其中计算能被7整除或能被5整除的整数的个数的操作在通用过程Fun中实现,请编写该过程的代码。要求:请勿改动程序中的任何内容,只在FunctionFun()和EndFunction之间填人你编写的若干语句。最后将修改后的文件按原文件名存盘。标准答案:步骤1:打开本题工程文件。步骤2:分析并编写程序代码。FunctionFun()DimSAsInteger,iAsIntegerFori=1To1000IfiMod5=0OriMod7=0Then8=s+1EndIfNextiFun=sEndFunction步骤3:调试并运行程序,关闭程序后按题目要求存盘。知识点解析:本题要求的是1000以内能被5或7整除的数的个数。在VisualBasic中,使用Mod运算符来判断一个数是否可以被另一个数整除,如果计算结果为0,则表示可以整除,否则不能整除。四、综合应用题(本题共1题,每题1.0分,共1分。)44、在考生文件夹下有一个工程文件sjt5.vbp,含三个窗体,标题分别为“启动”、“注册”、“登录”,程序运行时显示“启动”窗体,单击窗体上按钮时弹出对应窗体进行注册或登录。注册信息放在全局数组uSers中,注册用户数(小于或等于10个)放在全局变量n中(均已在标准模块中定义)。注册时用户名不能重复,且“口令”与“验证口令”必须相同,注册成功则在“启动”窗体的标签中提示“注册成功”,否则提示相应错误信息。登录时,检验用户名和口令,若正确,则在“启动”窗体的标签上提示“登录成功”,否则提示相应错误信息。标准模块中函数finduser的功能是:在users数组中搜索用户名(参数ch),找到则返回该用户名在users中的位置,否则返回0。文件中已经给出了所有控件和程序,但程序不完整,请去掉程序中的注释符,把Form2、Form3窗体文件中的?改为正确的内容。注意:不得修改已经存在的程序和控件的属性;最后,程序按原文件名存盘。标准答案:【操作步骤】步骤1:打开本题工程文件。步骤2:打开代码编辑窗口,去掉程序中的注释符“’”,将问号改为正确的内容。参考答案(画线部分是需考生填入的内容)’Form2窗体代码PrivateSubCommandl_Click()’清空重置Text1=""Text2=""Text3=""EndSubSubwriteusers()’向数组users中写入新用户信息n=n+1’用户数目自增users(n,1)=Text1’保存用户的用户名、密码users(n,2)=Text2EndSubPrivateSubCommand2_Click()IfText1=""ThenMsgBox("必须输入用户名!")Text1.SetFocus’Text1重新获得焦点ElseIffinduser(Trim$(Text1))>0Then’如找到相同名,则返回位置一定大于0MsgBox("此用户名已经存在!")ElseIfText2<>Text3Then’比较口令与验证口令是否相同MsgBox("口令验证错误!")ElsewriteusersForm1.Label1="注册成功!"’当注册成功后Label1显示成功信息Form2.HideEndIfEndSub’Form3窗体代码PrivateSubCommand1CliCk()k=finduser(Trim$(Text1))Ifk=0Then’验证用户名是否存在MsgBox("没有注册!")ElseIfTrim$(Text2)<>users(k,2)Then’验证输入的密码是否正确MsgBox("口令错误!")ElseForm1.Label1.Caption="登录成功!"Form3.HideEndIfEndSub步骤3:调试并运行程序,关闭程序后按题目要求存盘。知识点解析:因为本题的窗体比较多,含有一个模块,所以首先要理清思路,了解每一个窗体的功能。窗体1是启动界面,可以选择登录或者注册,窗体2是注册窗口实现用户的注册,窗体3是登录窗口实现用户的登录,模块中函数的功能是在数组中寻找用户名,并返回其所在的位置。理清了各个窗体和模块的关系,就可以开始分析并编写代码了。国家二级(VB)机试模拟试卷第2套一、选择题(本题共40题,每题1.0分,共40分。)1、若变量a未事先定义而直接使用(例如:a=0),则变量a的类型是()。A、IntegerB、StringC、BooleanD、Variant标准答案:D知识点解析:VB不要求必须先定义再使用。如果没有提前定义变量,就直接使用,系统就会将变量的数据类型指定为默认数据类型Variant变体型。故选D。2、下面程序运行时,单击窗体后,窗体上显示的结果是()。PrivateSubForm_Click()DimiAsInteger,sumAsLongDimtAsLongt=1:sum=0Fori=lTo3t=t*isum=sum+tNextiPrintsumEndSubA、3B、9C、5D、6标准答案:B知识点解析:本题考查累加算法。题目中sum为求和项,初值为0,t为每一项的值,变化规律为后一项是前一项的i倍,i的变化为从1到3,由于t的初值为1,因此求和为1*1+1*2+2*3。3、单击命令按钮时,下列程序段的执行结果为()。PrivateSubCommand1_Click()PrintFuncl(24,18)EndSubPublicFunctionFunc1(mAsInteger,nAsInteger)AsIntegerDoWhilem<>nDoWhilem>n:m=m.n:LoopDoWhilemA、8B、6C、4D、2标准答案:B知识点解析:本题考查循环程序的分析。在函数Func1中,程序主要由一条嵌套的循环语句构成,如果m<>n,外循环内部的第一条内循环为除去m中包含的所有的n的倍数。第二条内循环为除去n中包含的m的倍数。最后计算到m和n相等。4、在窗体上画一个名称为Command1的命令按钮,再画两个名称分别为Label1、Label2的标签,然后编写如下程序代码:PrivateXAsIntegerPrivateSubCommand1_Click()X=5:Y=3Callproc(X,Y)Label1.Caption=XLabel2.Caption=YEndSubPrivateSubproc(aAsInteger,ByValbAsInteger)X=a*aY=b+bEndSub程序运行后,单击命令按钮,则两个标签中显示的内容分别是()。A、25和3B、5和3C、25和6D、5和6标准答案:A知识点解析:虽然在过程proc中参数a默认为按地址传递,参数b指定了ByVal(按值)方式传递,但过程中并没有对a,b的值改变,只对变量X和Y进行了赋值,而X是在窗体模块中起作用的模块变量,而变量Y在proc过程中没有声明,要整个模块中也没有声明,说明它是一个局部变量,只在本过程中起作用。因此,在proc过程中X=a*a=5*5=25,会使按钮单击事件中的变量X值为25,而按钮单击事件过程中的变量Y不受影响,扔是原来的值3。因此两个标签上会分别显示25和3。5、在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程:PrivateSubCommand1_Click()c=1234c1=Trim(Str(c))Fori=1To4PrintNextEndSub程序运行后,单击命令按钮,要求在窗体上显示如下内容:1121231234则在横线处应填入的内容为()。A、Right(c1,i)B、Left(c1,i)C、Mid(c1,i,1)D、Mid(c1,i,i)标准答案:B知识点解析:程序中使用Str(c)将数值1234转换成为一个字符串"1234",又使用Trim函数去除了字符串首尾可能存在的空格,保证了字符串中只有1、2、3、4这4个字符。在For循环中从左边递次输出这些字符就需要使用Left()函数,Left是左部截取函数,可以截取字符串左边指定个数的字符串,以Left(c1,i)的形式即可每次循环取出期望的字符串。因此答案为B。6、在VB集成环境中要结束一个正在运行的工程,可单击工具栏上的一个按钮,这个按钮是()。A、B、C、D、标准答案:D知识点解析:暂无解析7、层次型、网状型和关系型数据库划分原则是()。A、记录长度B、文件的大小C、联系的复杂程度D、数据之间的联系方式标准答案:D知识点解析:层次模型的基本结构是树形结构,网状模型是一个不加任何条件限制的无向图,关系模型采用二维表来表示,所以三种数据库的划分原则是数据之间的联系方式。8、设有如下通用过程:PublicFunctionFun(xStrAsString)AsStringDimtStrAsString,strLAsIntegerlStr=""strL=Len(xStr)i=strL/2DoWhilei<=strLtStr=tStr&Mid(xStr,i+1,1)i=i+1LoopFun=tStr&tStrEndFunction在窗体上画一个名称为Text1的文本框和一个名称为Command1的命令按钮。然后编写如下的事件过程:PrivateSubCommand1_Click()DimS1AsStringSI="ABCDEF"Text1.Text=LCase(Fun(S1))EndSub程序运行后,单击命令按钮,文本框中显示的是()。A、ABCDEFB、abcdefC、defdefD、defabc标准答案:C知识点解析:程序中过程:Fun的Do循环的功能是从参数字符串中依次取出后半部分的字符组成一个字符串,然后这个字符串再重复一次由函数返回。函数Len用于返回字符串的长度,过程中字符串的长度做为Do循环的结束条件。Mid是字符串中部截取函数,用来从指定位置开始截取指定个数的字符.讨稃中使用Mid(xStr,i+1.1),通过循环依次取出字符串后半部分的字符。函数返回的字符串经Lcase函数转换为小写然后显示在文本框中。程序中做为Fun过程参数的字符串为“ABCDEF”,经处理返回并转为小写后为“defdef”。9、在窗体上画一个命令按钮和一个文本框(名称分别为Commandl和Textl),并把窗体的KeyPreview属性设置为True,然后编写如下代码:DimSaveAllAsStringPrivateSubForm_Load()ShowTextl.Text=“”Textl.SetFocusEndSubPrivateSubCommandl_Click()Textl.Text=LCase(SaveAll)+SaveAllEndSubPrivateSubForm_KeyPress(KeyAsciiAsInteger)SaveAll=SaveAll+Chr(KeyAscii)EndSub程序运行后,直接用键盘输入:VB,再单击命令按钮,则文本框中显示的内容为()。A、vbVBB、不显示任何信息C、VBD、出错标准答案:A知识点解析:窗体的KeyPreview属性用于设置或获取一个值,该值只是判断按键事件传递到具有焦点的控件前,窗体是否将接收此事件,该属性设为True时,简体将会接收按键事件。因此在文本框中输入“VB”时,会先触发Form_KeyPress()事件,该事件将输入的字符保存到窗体模块变量SayeAll中,然后才会显示在文本框中。当单击命令按钮时,Lcase函数将变量SaveAll中的字符串“VB”转换为小写,为“vb”,然后与原字符串连接,即“vb”+“VB”,显示在文本框中则为“vbVB”。10、设有以下程序:PrivateSubForm_Click()x=50Fori=1To4y=InputBox("请输入一个整数")y=Val(y)IfyMod5=0Thena=a+yx=yElsea=a+xEndIfNextiPrintaEndSub程序运行后,单击窗体,在输入对话框中依次输入15、24、35、46,输出结果为()。A、100B、50C、120D、70标准答案:A知识点解析:程序的作用是输入的数如果是5的倍数就累加,如果不是就每次加50或与上次是5的倍数的那个数相累加。因此最终a的值是15+15+35+35=100。11、下列数据结构中,不能采用顺序存储结构的是()。A、非完全二叉树B、堆C、队列D、栈标准答案:A知识点解析:根据完全二叉树的性质6,满二叉树和完全二叉树可以按层序进行顺序存储,但对一般的二叉树不适用。堆可以用一维数组来存储,也可以用完全二叉树来直观地表示堆的结构。队列、栈本身就是顺序存储的。故本题答案为A选项。12、在窗体上画一个命令按钮,然后编写如下事件过程:PrivateSubCommand1_Click()a$=InputBox("请输入一个二进制数")n=Len(a$)Fori=1TonDec=Dec*2+__________(a$,i,1)NextiPrintDecEndSub程序功能为:单击命令按钮,将产生一个输入对话框,此时如果在对话框中输入一个二进制数,并单击"确定"按钮,则把该二进制数转换为等值的十进制数。这个程序不完整,应在"_________"处填入的内容是()。A、LeftB、RightC、ValD、Mid标准答案:D知识点解析:将二进制数转换为十进制数需要将二进制数的每一位取出来进行运算,从一个数值字符串中截取一位数字字符要使用Mid函数,因此在程序空缺处该填入Mid。13、在窗体上画两个单选按钮,名称分别为Optionl、Option2,标题分别为“宋体”和“黑体”;1个复选框(名称为Check1,标题为“粗体”)和1个文本框(名称为Text1,Text属性为“改变文字字体”),窗体外观如图所示。程序运行后,要求“宋体”单选按钮和“粗体”复选框被选中,则以下能够实现上述操作的语句序列是()。A、Optionl.Value=FalseCheckl.Value=TrueB、Optionl.Value=TrueCheckl.Value=0C、Option2.Value=FalseCheckl.Value=2D、Optionl.Value=TrueCheckl.Value=1标准答案:D知识点解析:单选按钮控件的Value属性值为True表示被选中,False表示未被选中;复选框控件的Value属性值为0表示未选中,1表示选中,2表示禁止。本题中是单选按钮和复选框都被选中,故D选项正确。14、设在窗体模块中有如下类型定义:PublicTypeRecnunAsIntegernameAsStringEndType下面关于这一类型定义的叙述中正确的是()。A、这是一个正确的类型定义B、因为在TypeRec前面使用了关键字Public,所以是错误的C、因为其中的name元素没有被定义为定长字符串,所以是错误的D、自定义类型不能写在窗体模块中,所以是错误的标准答案:B知识点解析:当在标准模块中定义用户定义数据类型时,关键字Type前可以有Public(默认)或Private;而如果在窗体模块中定义,则必须在前面加上关键字Private。所以B选项叙述正确而A选项叙述错误;记录类型中的元素可以是变长字符串,也可以是定长字符串,C选项叙述错误;标准模块和窗体模块中均可以使用自定义类型,D选项叙述错误。本题选择B选项。15、下列叙述中正确的是A、算法的效率只与问题的规模有关,而与数据的存储结构无关B、算法的时间复杂度是指执行算法所需要的计算工作量C、数据的逻辑结构与存储结构是一一对应的D、算法的时间复杂度与空间复杂度一定相关标准答案:B知识点解析:算法的效率与问题的规模和数据的存储结构都有关,A错误。算法的时间复杂度,是指执行算法所需要的计算工作量,B正确。由于数据元素在计算机存储空间中的位置关系可能与逻辑关系不同,因此数据的逻辑结构和存储结构不是一一对应的,C错误。算法的时间复杂度和空间复杂度没有直接的联系,D错误。16、下列不是VisualBasic合法常量的是()。A、&H15&B、’abc’C、1E-8D、#2-2-2015#标准答案:B知识点解析:VisualBasic中的常量分为两种,一种是文字常量,一种是符号常量,其中,文字常量又分为字符串常量和数值常量。A选项为十六进制长整型数值常量;C选项为浮点数常量;D选项为日期常量;B选项中字符串常量应该使用一对双引号括起来,而不应该用单引号,所以B选项不是合法的常量。本题选择B选项。17、如果把文本框的Enabled属性设置为False并运行程序,则以下叙述中正确的是A、文本框中的文本变为灰色,且不能将光标置于文本框上B、文本框中的文本变为灰色,可以将光标置于文本框上,但不能改变文本框中的内容C、文本框中的文本变为灰色,可以改变文本框中的内容D、文本框中的文本正常显示,可以将光标置于文本框上,但不能改变文本框中的内容标准答案:A知识点解析:Enabled是用来设置控件是否可用。如果把文本框的Enabled属性设置为False并运行程序,文本框中的文本变为灰色,且不能将光标置于文本框上。18、窗体上有1个名称为Command1的命令按钮;1个名称为List1、没有列表项的列表框。编写如下程序:PrivateSubCommand1_Click()DimxAsString,sAsString,tempAsStringDimiAsIntegerx=InputBox("输入字符串","输入")Ifx<>""ThenFori=Len(x)To1Step-1s=Mid(x,i,1)Ifs<>""Thentemp=s+tempElseList1.AddItemtemps=""temp=""EndIfNextList1.AddItemtempElseMsgBox"输入内容为空!"EndIfEndSub程序运行后,单击命令按钮Command1,并输入"Happynewyear",则在List1中显示的内容为A、yearnewHappyB、HappynewyearC、raeywenyppaHD、yppaHwenraey标准答案:A知识点解析:List1.AddItem可以为列表框添加列表项。For循环中通过Mid函数从字串中倒序取出字符,碰到空格时添加新列表项。选A)。19、一个栈的初始状态为空。现将元素1,2,3,A,B,C依次入栈,然后再依次出栈,则元素出栈的顺序是A、1,2,3,A,B,CB、C,B,A,1,2,3C、C,B,A,3,2,1D、1,2,3,C,B,A标准答案:C知识点解析:栈的修改是按后进先出的原则进行的,所以顺序应与入栈顺序相反,故选C。20、以下关于键盘事件的叙述中,错误的是()。A、按下键盘按键既能触发KeyPress事件,也能触发KeyDown事件B、KeyDown、KeyUp事件过程中,大、小写字母被视作相同的字符C、KeyDown、KeyUp事件能够识别Shift、Alt、Ctrl等键D、KeyCode是KeyPress事件的参数标准答案:D知识点解析:当用户按下键盘上的任意键时,会触发当前拥有焦点对象的KeyDown事件,用户松开键盘上任意键时,就会触发KeyUp事件。当用户按下又松开键盘上任意键时,触发KeyPress事件。故A选项正确。KeyDown事件和KeyUp事件均向事件过程返回两个参数KeyCode和Shift。KeyCode参数返回所按键对应的ASCII字符代码的整型数值或键代码常数,大小写字符被看作是相同字符,返回同一个KeyCode值。故B选项正确。Shift参数用于判断用户是否按下Shift、Ctrl和Alt键,若用户按下了对应的键,Shift参数会返回不同的值。根据以上KeyDown和KeyUp事件能识别Shift、Ctrl和Alt键。故C选项正确。KeyPress事件只有一个参数KeyAscii,它可以返回按键对应的Ascii值,大小写字母Ascii值不同。KeyCode不是KeyPress事件的参数。故D选项错误。21、为了使文本框只具有垂直滚动条,应先把MultiLine属性设置为True,然后再把ScrollBars属性设置为()。A、0B、1C、2D、3标准答案:C知识点解析:文本框的ScrollBars属性值:0表示无滚动条,1表示只有水平滚动条,2表示只有垂直滚动条,3表示水平和垂直滚动条都有。本题文本框只具有垂直滚动条,则ScrollBar属性值就设置为2,故C选项正确。22、VisualBasic控件一般都规定一个默认属性,在引用这样的属性时,只写对象名而不必给出属性名。默认属性为Caption的控件是()。A、列表框(ListBox)B、标签(Label)C、文本框(TextBox)D、组合框(ComboBox)标准答案:B知识点解析:标签主要用来显示文本信息,它所显示的内容只能用Caption属性来设置或修改,Caption为标签控件的默认属性,引用时可以只写标签控件的对象名。23、下面对对象概念描述正确的是A、对象间的通信靠消息传递B、对象是名字和方法的封装体C、任何对象必须有继承性D、对象的多态性是指一个对象有多个操作标准答案:A知识点解析:对象之间进行通信的构造叫做消息,A正确。多态性是指同一个操作可以是不同对象的行为,D错误。对象不一定必须有继承性,C错误。封装性是指从外面看只能看到对象的外部特征,而不知道也无须知道数据的具体结构以及实现操作,B错误。24、下列循环中,可以正常结束的是()。A、i=10Doi=i+1LoopUntili<1B、i=1Doi=i+1LoopUntili=10C、i=10Doi=i+1LoopWhilei>1D、i=10Doi=i-2LoopUntili=1标准答案:B知识点解析:选项A中先执行一次循环体,i的值变成1,测试循环结束条件,i<1不成立,循环继续,i值总是增加,达不到循环结束条件,不能正常结束。选项B先执行循环体,i值加1变成2,再测试循环结束条件i=10,继续循环,i值再加1,直到i变为10,循环结束。选项C中i初值为10,先执行一次循环体,使i加1,然后判断继续循环的条件i>1是否成立,此后i值不会小于等于,循环会一直继续下去,不会正常结束。选项D中i初值为10,每次循环i值减2,因此它总是偶数,而循环结束的条件是i=1,不可能达到,循环会一直继续下去。25、在VisualBasic环境下设计应用程序时,系统能自动检查出的错误是()。A、语法错误B、逻辑错误C、逻辑错误和语法错误D、运行错误标准答案:A知识点解析:VB中系统只能检查出语法错误,不能检查出逻辑错误。故选A。26、有下面程序代码:PrivateSubCommand1_Click()Dima%(10)Fork=1To9a(k)=InputBox("")NextkCallproc(a(),6,3,10)Fork=1To10Printa(k);"";NextkEndSubPrivateSubproc(a%(),x%,m%,n%)Fork=nTom+1Step-1a(k)=a(k-1)Nextka(k)=xEndSubCommand1_Click过程运行时,从键盘输入9个数:123265348756795052,则输出是A、123265348756795052B、6123265348756795052C、1232653487567950526D、1232665348756795052标准答案:D知识点解析:数组作为过程的参数时,进行的是按地址传递,即将实参数组的起始地址传递给形参。本题首先用数组a(k)接收键盘中输入的数,进行初始化;proc()过程实现从a(10)开始依次将后一位值赋值给其前一位,直到a(4)。当k=3时,结束循环,并将x的值赋值给a(3)。故正确答案为选项D。27、下列叙述中正确的是A、程序执行的效率与数据的存储结构密切相关B、程序执行的效率只取决于程序的控制结构C、程序执行的效率只取决于所处理的数据量D、以上说法均错误标准答案:A知识点解析:程序执行的效率与数据的存储结构、数据的逻辑结构、程序的控制结构、所处理的数据量等有关。28、设有如图所示窗体和以下程序:PrivateSubCommand1_Click()Text1.Text="VisualBasic"EndSubPrivateSubText1_LostFocus()IfText1.Text<>"BASIC"ThenText1.Text=""Text1.SetFocusEndIfEndSub程序运行时,在Text1文本框中输入"Basic"(如图所示),然后单击Command1按钮,则产生的结果是()。A、文本框中无内容,焦点在文本框中B、文本框中为"Basic",焦点在文本框中C、文本框中为"Basic",焦点在按钮上D、文本框中为"VisualBasic",焦点在按钮上标准答案:A知识点解析:题目程序的功能为,当单击命令按钮时,Text1失去焦点,激发Text1的LostFocus事件,在此事件中,程序判断文本框中字符串是否为"BASIC",如果是则退出事件过程,继续执行命令按钮的单击事件过程,文本框中显示"VisualBasic",如果不是则文本框内容置空,焦点返回到文本框中等待输入,不会执行命令按钮的单击事件过程。题目中输入了"Basic",与"BASIC"不符,因此文本框置空,焦点回到文本框中。29、以下数组定义语句中,错误的是()。A、Statica(10)AsIntegerB、Dimc(3,1To4)C、Dimd(-10)D、Dimb(0To5,1To3)AsInteger标准答案:B知识点解析:定义数组有2种格式:第1种格式:数组每一维的只给出下标的上界,即可以使用的下标的最大值。格式为Dim|public|private|static<数组名>(上界,[上界..])[As类型名]形如:Dima(5)AsInterger,Dimb(4,5)AsInteger这种形式,数组各维的下标的下界只能为0或1,而且下标的上界>=下界。本题中C选项下标上界-10<0或1,故A选项正确,C选项错误。第2种格式:数组的每一维下标的上界和下界都说明。格式为Dim|public|private|static<数组名>((下界to上界)[,(下界to上界)…])形如:Dima(-2to5)AsIntergerDima(1to3,2to6)AsInterger这种形式,数组各维下标的下界没有限制,只要保证下标的上界>=下界就行。故D选项正确。以上两种形式也可以混合使用。故B选项也正确。30、某人编写了如下程序,用来求10个整数(整数从键盘输入)中的最大值:PrivateSubCommand1_Click()Dima(10)AsInteger,maxAsIntegerFork=1To10a(k)=InputBox("输入一个整数")Nextkmax=0Fork=1To10Ifa(k)>maxThenmax=a(k)EndIfNextkPrintmaxEndSub运行程序时发现,当输入10个正数时,可以得到正确结果,但输入10个负数时结果是错误的,程序需要修改。下面的修改中可以得到正确运行结果的是()。A、把Ifa(k)>maxThen改为Ifa(k)B、把max=a(k)改为a(k)=maxC、把第2个循环语句Fork=1To10改为Fork=2To10D、把max=0改为max=a(10)标准答案:D知识点解析:程序中把变量max的初始值设置为0,没有考虑到负数的情况。应该把它的初始值设置为数组中的一个元素的值,然后让数组中的各个元素与这个值比较,如果比它大,就替换变量max的值,这样才能得到数组中的最大值。因此要修改max=0这一行。31、阅读程序:PrivateSubForm_Click()x=50Fori=1To4y=InputBox("请输入一个整数")y=Val(y)IfyMod5=0Thena=a+yx=yElsea=a+xEndIfNextiPrintaEndSub程序运行后,单击窗体,在输入对话框中依次输入15、24、35、46,输出结果为()。A、100B、50C、120D、70标准答案:A知识点解析:程序的作用是输入的数如果是5的倍数就累加,如果不是就与每次加50或与上次是5的倍数的那个数相累加。因此最终a的值是15+15+35+35=100。32、窗体上有1个名称为Command1的命令按钮,事件过程如下:PrivateSubCommand1_Click()Dimx%,y%,z%x=InputBox("请输入第1个整数")y=InputBox("请输入第2个整数")DoUntilx=yIfx>yThenx=x-yElsey=y-xLoopPrintxEndSub运行程序,单击命令按钮,并输入2个整数169和39,则在窗体上显示的内容为()。A、11B、13C、23D、39标准答案:B知识点解析:程序中Do循环比较输入的两个数的大小,把较大的数值减去较小的数值后再与较小的值比较,直到两个数值相等。程序中输入169和39,则x=169-39=130,130>y即130>39,因此x=130-39=91,如此循环x=91-39=52-39=13,此时13>39为假,执行y=y-x=39-13=26,循环y=26-13=13,此时x、y都为13,循环结束,因此窗体上显示为13。33、窗体上有一个名称为Label1的标签;一个名称为Timer1的计时器,其Enabled和Interval属性分别为True和1000。编写如下程序:DimnAsIntegerPrivateSubTimer1_Timer()ch=Chr(n+Asc("A"))Label1.Caption=chn=n+1n=nMod4EndSub运行程序,将在标签中()。A、不停地依次显示字符"A"、"B"、"C"、"D",直至窗体被关闭B、依次显示字符"A"、"B"、"C"、"D"各一次C、每隔1秒显示字符"A"一次D、每隔1秒依次显示26个英文字母中的一个标准答案:A知识点解析:Asc函数返回字符的ASCII,Chr函数将数值转换成相应的ASCII码字符。计时器间隔Interval属性设置为1000,则计时器事件每1秒钟发生一次。n的值每次调用计时器事件过程都会加1,n=nMod4又会使n值只能为0、1、2、3,因此程序运行后每1秒Label1标签将依次显示"A"、"B"、"C"、"D"。34、如果一个顶级菜单项的访问键为D,则以下等同于单击该菜单项的操作为A、按Ctrl+D键B、按Alt+D键C、按D键D、按Shift+D键标准答案:B知识点解析:访问键是菜单、菜单项或控件(如按钮)标签的文本中带下划线的字符。访问键允许用户通过同时按Alt键和预先定义的访问键来"单击"按钮。35、以下能够触发文本框Change事件的操作是()。A、文本框失去焦点B、文本框获得焦点C、设置文本框的焦点D、改变文本框的内容标准答案:D知识点解析:改变文本框中的内容时就会触发它的Change事件,故选D。36、设窗体上有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选项正确。37、设有下面程序代码:PrivateSubCommand1_Click()DimstrAsString,chAsStringstr="VisualBasicProgramming"ch="a"n=fun(ch,str)Printstr,nEndSubPrivateFunctionfun(chAsString,strAsString)AsIntegerDimstrbufAsString,cAsString,nAsIntegerFork=1ToLen(str)c=Mid$(str,k,1)Ifc<>chThenstrbuf=strbuf&cElsestrbuf=strbuf&UCase(c)n=n+1EndIfNextkstr=strbuffun=nEndFunction程序运行时的输出是A、Vis

温馨提示

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

评论

0/150

提交评论