版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
国家二级(VB)机试模拟试卷3(共9套)(共396题)国家二级(VB)机试模拟试卷第1套一、选择题(本题共40题,每题1.0分,共40分。)1、对建立良好的程序设计风格,下面描述正确的是()。A、程序应简单、清晰、可读性好B、符号名的命名只要符合语法C、充分考虑程序的执行效率D、程序的注释可有可无标准答案:A知识点解析:程序设计应该简单易懂,语句结构应该简单直接,不应该为提高效率而把语句复杂化。2、表达式Int(-15.8)+Fix(-15.8)+Int(15.8)+Fix(15.8)的运算结果是()。A、-1B、-2C、0D、1标准答案:A知识点解析:本题考查函数Int的功能,Int(x)的作用是取不大于x的最小的整数,Fix(x)则是简单的取整数部分。3、工程文件中包含一个模块文件和一个窗体文件。模块文件的程序代码是:PublicxAsIntegerPrivateyAsInteger窗体文件的程序代码是:DimaAsIntegerPrivateSubForm_Load()DimbAsIntegera=2:b=3:x=10:y=20EndSubPrivateSubCommand1_Click()a=a+5:b=b+5:x=x+5:y=y+5Printa;b;x;yEndSub运行程序,单击窗体上的命令按钮,则在窗体上显示的是()。A、55155B、751525C、78155D、75155标准答案:D知识点解析:程序在模块文件中定义x为整型全局变量,在整个工程中都起作用,而y定义为整型私有变量,只能在本模块文件中起作用。在窗体文件中变量a在本窗体文本中起作用,窗体加载事件中定义的变量b和没有声明的变量y,只在本事件过程起作用。程序窗体加载时,对后边有影响的变量值为a为2,x为10,没有指定初值的变量值默认为0,因此单击命令按钮后,a=a+5=7,b=b+5=5,x=x+5=15,y=y+5=5,结果输出75155。4、下面不能在信息框中输出“VisualBasic”的是()。A、x=MsgBox("VisualBasi")B、MsgBox("VisualBasic")C、MsgBox"VisualBasic"D、CallMsgBOX"VisualBasic"标准答案:C知识点解析:MsgBox()函数用于显示提示信息,并可返回一个代表用户单击了哪个按钮的Integer类型值,当其作为函数使用时必须将参数放在括号内部,而返回值可以赋值给一个变量,也可以单独使用此函数而不将其返回值赋值给变量;MsgBox过程也用于显示提示信息,作为过程必须使用Call关键字来进行调用,其参数不能加括号。5、在窗体上有一个文本框Text1和一个标签Label1,要求运行程序时,在文本框中输入的内容立即显示在标签中(如图1所示),则空白处应填入的内容是()。PrivateSubText1_______()Label1.Caption=Text1.TextEndSubA、GetFocusB、ClickC、ChangeD、LostFOCBS标准答案:C知识点解析:本题考查文本框的事件。文本框的GetFocus事件为文本框获得焦点时触发一次,而单击文本框时触发一次Click事件,Change事件是每次文本框中的文本发生改变时触发的事件,而LostFocus事件是文本框失去焦点时触发的事件。6、窗体上有一个名称为Timerl的计时器控件,一个名称为Shape1的形状控件,其Shape属性值为3(Circle)。编写程序如下:PrivateSubForm_Load()Shape1.Top=0Timer1.Interval=100EndSubPrivateSubTimerl_Timer()StaticxAsIntegerShape1.Top=Shape1.Top+100X=x+1IfxMod10=0ThenShape1.Top=0EndIfEndSub以下关于上述程序的叙述中,错误的是()。A、每执行一次Timerl_Tilller事件过程,x的值都在原有基础上增加1B、Shape1每移动10次回到起点,重新开始C、窗体上的Shape1由下而上移动D、Shape1每次移动100标准答案:C知识点解析:题目中变量x定义为Static,即每次进入Timer事件过程时,x都会保留上次的值,从而实现每执行一次Timer1_Timer事件过程x的值都在原有基础上增加1。程序中判断调用Timer事件过程10次后,重置Shape1的top值为0,即回到起点。控件Shape1的Top属性是距离窗体顶的位置,数值越大距离越远,因此Shape1会由上向下移动。7、有下列程序代码:PrivateSubCommand1-Click()RandomizeDimx(30)AsInteger,sAsIntegerFork%=1To30x(k)=Int(Rnd*100)NextkFork=1To30Ifx(k)Mod2=1Thens=s+x(k)EndIfNextkPrintsEndSub程序运行后的输出是()。A、30个随机整数中所有个位数为1的数之和B、30个随机整数中所有偶数的和C、30个随机整数的和D、30个随机整数中所有奇数的和标准答案:D知识点解析:第一个For循环利用表达式Int(Rnd*100)随机产生一个[0,99]之间的整数,并依次赋值给数组中每个元素。第二个For循环语句的功能是:循环遍历数组中的所有元素,使用If语句判断每个元素是否为奇数,若是奇数则将该元素累加到变量s中。综上所述,本程序的功能是随机产生30个整数,并将所有奇数进行累加输出。故D选项正确。8、窗体上有名称为Command1的命令按钮和名称为Text1的文本框PrivateSubCommand1_Click()Text1.Text="程序设计"Text1.SetFocusEndSubPrivateSubText1_GotFocus()Text1.Text="等级考试"EndSub运行以上程序,单击命令按钮后()。A、文本框中显示的是“程序设计”,且焦点在文本框中B、文本框中显示的是“等级考试”,且焦点在文本框中C、文本框中显示的是“程序设计”,且焦点在命令按钮上D、文本框中显示的是“等级考试”,且焦点在命令按钮上标准答案:B知识点解析:运行程序,单击命令按钮后,执行Command1_Click事件过程代码,文本框Text1中显示“程序设计”,并且文本框Text1获得焦点,此时焦点在Text1中;当Text1获得焦点就会触发它的Got_Focus事件,执行Got_Focus事件过程,结果文本框Text1中显示“等级考试”。故B选项正确。9、在窗体上域一个名称为Text1的文本框和一个名称为Command1的命令按钮,然后编写如下事件过程:PrivateSubCommand1_Click()DimiAsInteger,nAsIntegerFori=0To50i=i+3n=n+lIfi>10ThenExitForNextText1.Text=sty(n)EndSub程序运行后,单击命令按钮,在文本框中显示的值是()。A、2B、3C、4D、5标准答案:B知识点解析:程序中For循环的结束有两种情况,一种是循环完指定的次数,一种是达到一定的条件后直接退出循环。由于在循环体中循环变量i的值被修改:i=i+3,因此,每次循环开始时i的取值为0,4,8,i为8时执行i=i+3=11。n=n+1=3,这时i的值大于10,退出For循环,因此For循环执行了3次,即n的值为3。所以在文本框中会显示3。10、窗体上有1个名称为Text1的文本框;1个名称为Timer1的计时器控件,其Interval属性值为5000,Enabled属性值是True。Timer1的事件过程如下:PrivateSubTimer1_Timer()StaticflagAsIntegerIfflag=0Thenflag=1flag=-flagIfflag=lThenText1.ForeColor=&HFF&’&HFF&为红色ElseText1.ForeColor=&HC000&’&HC000&为绿色EndIfEndSub以下叙述中正确的是()。A、每次执行此事件过程时,flag的初始值均为0B、flag的值只可能取0或1C、程序有逻辑错误,Else分支总也不能被执行D、程序执行后,文本框中的文字每5秒改变一次颜色标准答案:D知识点解析:计时器控件(Timer)用来完成有规律性时间间隔执行的任务,Interval属性用于设置计时器事件之间的间隔,以毫秒为单位。本题在每5秒执行一次的Timer事件过程中,通过静态变量flag值的交替变换(即-1和1之间)来控制文本框中文字的颜色,值为-1时为绿色,值为1时为红色。除程序刚启动第一次执行Timer事件过程时,静态变量flag的初始值为0外,其余各次均为-1或1。11、关于变量作用域,下列叙述中正确的是()。A、在窗体的FormLoad事件过程中定义的变量是全局变量B、局部变量的作用域可以超出所定义的过程C、在某个Sub过程中定义的局部变量可以与其他事件过程中定义的局部变量同名,但其作用域只限于该过程D、在调用过程中,所有局部变量被系统初始化为0或空字符串标准答案:C知识点解析:本题考查变量的作用域。局部变量是在过程内用声明的变量,只能在本过程中使用,不同过程中的局部变量可以重名,由Dim或者Prirate声明的局部变量在过程调用前才会被初始化为0或空字符串,静态局部变量不会被初始化为0或空字符串;在“通用声明”段中用Public语句声明的变量为全局变量,可被本应用程序的任何过程或函数访问。12、下列选项中,不属于模块间耦合的是()。A、内容耦合B、异构耦合C、控制耦合D、数据耦合标准答案:B知识点解析:耦合可以分为下列几种,它们之间的耦合度由高到低排列:内容耦合——若一个模块直接访问另一模块的内容,则这两个模块称为内容耦合。公共耦合——若一组模块都访问同一全局数据结构,则称为公共耦合。外部耦合——若一组模块都访问同一全局数据项,则称为外部耦合。控制耦合——若一模块明显地把开关量、名字等信息送入另一模块,控制另一模块的功能,则称为控制耦合。标记耦合——若两个以上的模块都需要其余某一数据结构的子结构时,不使用其余全局变量的方式而全使用记录传递的方式,这样的耦合称为标记耦合。数据耦合——若一个模块访问另一个模块.被访问模块的输入和输出都是数据项参数,则这两个模块为数据耦合。非直接耦合——若两个模块没有直接关系,它们之间的联系完全是通过程序的控制和调用来实现的,则称这两个模块为非直接耦合,这样的耦合独立性最强。13、软件生命周期中的活动不包括()。A、市场调研B、需求分析C、软件测试D、软件维护标准答案:A知识点解析:软件生命周期可以分为软件定义、软件开发与软件运行维护三个阶段。主要活动阶段是:可行性研究与计划阶段,需求分析,软件没计,软件实现,软件测试,运行和维护,所以选择A。14、在窗体上画一个名称为Command1的命令按钮,一个名称为Label1的标签,然后编写如下事件过程:PrivateSubCommand1_Click()s=0Fori=1To15x=2*i一1IfXMod3=0Thens=s+1NextiLabel1.Caption=sEndSub程序运行后,单击命令按钮,则标签中显示的内容是()。A、1B、5C、27D、45标准答案:B知识点解析:s变量用来计数,如果xMod3=0即如果能被3整除则计数增加1。程序中x的取值为1、3、5、7、9、11、13、15、17、19、21、23、25、27、29,其中是3的整数倍的数有3、9、15、21、27共5个,因此s的值为5。15、现有如下一段程序:PrivateSubCommand1_Click()x=UCase(InputBox("输入:"))SelectCasexCase"A"To"C"Print"考核通过!"Case"D"Print"考核不通过!"CaseElsePrint"输入数据不合法!"EndSelectEndSub执行程序,在输入框中输入字母“B”,则以下叙述中正确的是()。A、程序运行错B、在窗体上显示“考核通过!”C、在窗体上显示“考核不通过!”D、在窗体上显示“输入数据不合法!”标准答案:B知识点解析:程序中Ucase函数将输入的字母转换为大写,然后通过select多分支控制语句选择输出不同信息,当输入字母在“A”到“C”之间时,显示“考核通过!”,输入的是“D”时显示“考核不通过!”,如果输入的是“A”到“D”之外的其他字符则显示“输入数据不合法!”。程序中输入字母“B”,因此会显示“考核通过!”。16、设窗体上有一个标签Labell和一个计时器Timerl,Timerl的Interval属性被设置为1000,Enabled属性被设置为True。要求程序运行时每秒在标签中显示一次系统当前时间。以下可以实现上述要求的事件过程是()。A、PrivmeSubTimerl_Timer()Labell.Caption=TrueEndSubB、PrivateSubTimer1_Timer()Labell.Caption=Time$EndSubC、PrivateSubTimerl_Timer()Labell.Interval=1EndSubD、PrivmeSubTimer1_Timer()Fork=1ToTimer1.IntervalLabell.Caption=TimerNextkEndSub标准答案:B知识点解析:Timerl的Interval属性值是1000,Enabled属性为True,说明定时器开始工作,每隔1000毫秒(即1秒)触发一次Timer事件,从而执行一次Timer事件过程。要想每秒在标签中显示一次系统时间,则在Timer事件过程中把系统时间赋给标签的Caption属性就能实现。故选B。17、下面不能作为结构化方法软件需求分析工具的是A、系统结构图B、数据字典(DD)C、数据流程图(DFD图)D、判定表标准答案:A知识点解析:结构化方法软件需求分析工具主要有数据流图、数据字典、判定树和判定表。18、能得到组合框Combol中最后一个列表项序号的表达式是()。A、Combol.IndexB、ombol.ListIndexC、Combol.ListCount-1D、Combol.List(ListCount)标准答案:C知识点解析:组合框的IAstCount属性列出列表框中表项的数量,列表框中表项的排列从0开始,最后一项的序号为ListCount—1,C选项正确。本题选择C选项。19、分段函数入下:设x中已经有一个数值。下列程序段中,能正确计算y值的是()。A、SelectCasexCageIs<0y=一1CaseIs<10y=0CaseElsey=1EndSelectB、SelectCasexCageIs<0y=一1CageIs>=0.Is<10y=0CaseIs>=10y=1EndSelectC、SelectCasexCasex<0y=一1Casex<10y=0CageElsey=1EndSelectD、SelectCasexCagex<0y=一1CageX>=0AndX<10y=0CaseElsey=1EndSelect标准答案:A知识点解析:在selectcase……Endselect结构中,case后可以接下列三种形式的值:1.表达式[,表达式];2.表达式To表达式;3.Is关系运算表达式.故C选项错误。且当用关键字Is定义条件时,只能是简单的条件,不能用逻辑运算符将两个或多个简单条件组合在一起,故B选项和D选项均错误;A选项符合题意。本题选择A选项。20、以下能对正实数d的第3位小数四舍五入的表达式是A、0.01*Int(d+0.005)B、0.01*Int(100*(d+0.005))C、0.01*Int(100*(d+0.05))D、0.01*Int(d+0.05)标准答案:B知识点解析:Int函数,返回的是不大于该数的一个整数。d+0.005,是让第三位小数进位,达到四舍五入,再乘100,放大100倍,保留小数位,取整后乘0.01还原为原数。如:5.333+0.005=5.338,乘100后为533.8,取整后为533,乘0.01后还原为5.33。21、表达式Str(Len(”123”))+Str(77.7)的值是()。A、3+77.7B、377.7C、80.7D、12377.7标准答案:B知识点解析:本题考查字符串处理函数。Str的功能是把数字转化为字符,Len函数的功能是求字符串中字符的个数。题中“+”为字符串连接运算符。22、用户在组合框中输入或选择的数据可以通过一个属性获得,这个属性是()。A、ListB、ListIndexC、TextD、ListCount标准答案:C知识点解析:组合框的List属性用来列出表项的内容。List属性保存了列表框中所有值的数组,可以通过下标访问数组中的值,其格式为[列表框].List(下标);Listlndex属性的设置值是已选中的表项的位置,表项位置由索引值指定;Text属性值是用户所选择的项目的文本或直接从编辑区输入的文本;ListCount属性属性列出列表框中表项的数量。23、下列说法中正确的是A、通过适当的设置,可以在程序运行期间,让计时器控件显示在窗体上B、在列表框中不能进行多项选择C、通过设置适当的属性,可以把列表框中的项目按字母从大到小排序D、框架也有Click和DblClick事件标准答案:D知识点解析:A选项计时器在运行期间,在程序界面是不可见的,故A选项表述错误;B选项列表框不仅能进行单项选择也能进行多项选择,故B选项表述错误;C选项中的列表框可以通过Sorted属性,指定列表中的项目是否自动按字母顺序排列,但是不能按字母从大到小顺序排序,故C选项表述错误;D选项框架常用的有鼠标单击和双击事件,它不接收用户输入。故D选项正确。24、为了在按下回车键时执行某个命令按钮的事件过程,需要把该命令按钮的()属性设置为True。A、ValueB、CancelC、EnabledD、Default标准答案:D知识点解析:本题考查控件的常见属性。对于所有具有Cancel属性的控件,Cancel表示该控件是否当按下“Esc”键时,执行某个事件过程。Enabled表示控件是否可以使用,命令按钮的默认属性为Default,表示当按下回车键的时候,执行某个命令按钮的事件过程。25、以下变量名中合法的是()。A、x-2B、12abcC、sum_totalD、print标准答案:C知识点解析:根据VB中变量名的命名规则,变量x-2中有-减号,不合法;变量12abc是以数字开头,不合法;变量print是VB的保留字,不能作变量名,也不合法。sum_total是符合命名规则,是合法的。故选C。26、下列关于数组的叙述中,正确的是A、数组名的命名规则与简单变量相同B、VisualBasic支持数组的隐式定义C、使用Static语句定义任何类型的数组时,都把该数组的全部元素初始化为0D、使用Dim语句定义任何类型的数组时,都将把数组的全部元素初始化为空字符串标准答案:A知识点解析:定义格式中的"数组名"与简单变量相同,可以是VB中任何合法的变量名,故A项正确。数组必须先定义,后使用,不允许使用隐式定义,故B项错误。用Dim定义数组时,并不能任何类型的数组都初始化为空字符串,比如该语句把数值数组中的元素全都初始化为0;故选项D错误。同样,当用Static定义数组时,第一次定义时数组中的元素全都初始化为0;把字符串数组中的元素全都初始化为空字符串;如果没有退出程序,每次引用静态变量的数组后,其值将继续保留,作为下次引用时该变量的初始值,故C错误。27、下列叙述中正确的是()。A、栈是一种先进先出的线性表B、队列是一种后进先出的线性表C、栈与队列都是非线性结构D、以上三种说法都不对标准答案:D知识点解析:栈是一种先进后出的线性表,队列是一种先进先出的线性表,栈与队列都是线性结构。28、在DoUntil…Loop循环中,判断循环结束的方法是A、先判断循环条件,当条件为False时结束循环B、先判断循环条件,当条件为True时结束循环C、先执行循环体,再判断循环条件,当条件为False时结束循环D、先执行循环体,再判断循环条件,当条件为True时结束循环标准答案:B知识点解析:Do循环结构中Do[While|Until循环条件]…Loop先判断条件后执行循环体;Do…Loop[While|Until循环条件]先执行循环体后判断条件。其中DoUntil…Loop循环中,当条件为假时继续执行循环体,当条件为真时退出循环,故正确答案为B选项。29、PrintFormat(1234.56,"###.#")语句的输出结果是()。A、123.4B、1234.6C、1234.5D、1234.56标准答案:B知识点解析:Format是格式输出函数,数据要按照"输出格式字符串"指定格式输出。"输出格式字符串"中#表示显示一数字,若此位置没有数字则不显示。本题中"输出格式字符串"整数部分###长度小于1234时,1234按原样输出,小数部分#长度为1,则小数部分保留一位,四舍五入取6,故选B。30、设变量V=2,B=5,则执行下面语句序列的输出是Print"V";"B",24;:Print:PrintV;BA、VB2425B、VB2425C、VB2425D、252425标准答案:B知识点解析:语句Print"V";"B",24输出字符V和B及数据24,即:VB24。语句Print:PrintV;B先输出换行符,再输出变量V和B的值,即:25。故正确答案为B选项。31、在窗体上画一个文本框Text1,并编写如下事件过程:PrivateSubText1_KeyPress(KeyAsciiAsInteger)DimchAsStringch=UCase(Chr(KeyAscii))IfNot(ch>="A"Andch<="Z")Then_____________________EndIfEndSub要求当程序运行时,在文本框Text1中只能输入字母,无法输入其它字符,则在横线处应填入的语句是A、Text1.Text=""B、KeyAscii=0C、ch=""D、Text1.Text=Text1.Text&ch标准答案:B知识点解析:当按下某个键,所触发的是拥有输入焦点的那个控件的KeyPress事件。其中"KeyAscii"是一个预定义变量,执行KeyPress过程时,该变量是指所按键的ASCII码。类型转换函数Chr(n):把n转换成相应的字符,其中表达式n的值是合法的ASCII码值。字符串大写转换函数Ucase(s)将字符串s中的小写字母转换成大写字母。Ucase(Chr(KeyAscii))是先将输入的ASCII码转换成字符再将其转换成大写字母。IfNot(ch>="A"Andch<="Z")Then……EndIf;判断当所输入字母不是字母时执行的操作该如何做。Text1.Text="",将Text1文本框的内容设置为空。ch=""将空赋值给字符串变量ch,空格的ASCII码值为32。故正确答案为B选项。32、软件设计中模块划分应遵循的准则是()。A、低内聚低耦合B、高内聚低耦合C、低内聚高耦合D、高内聚高耦合标准答案:B知识点解析:软件设计中模块划分应遵循的准则是高内聚低偶合、模块大小规模适当、模块的依赖关系适当等。模块的划分应遵循一定的要求,以保证模块划分合理,并进一步保证以此为依据开发出的软件系统可靠性强,易于理解和维护。模块之间的耦合应尽可能的低,模块的内聚度应尽可能的高。33、耦合性和内聚性是对模块独立性度量的两个标准。下列叙述中正确的是()。A、提高耦合性降低内聚性有利于提高模块的独立性B、降低耦合性提高内聚性有利于提高模块的独立性C、耦合性是指一个模块内部各个元素间彼此结合的紧密程度D、内聚性是指模块间互相连接的紧密程度标准答案:B知识点解析:模块独立性是指每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单。一般较优秀的软件设计,应尽量做到高内聚,低耦合,即减弱模块之间的耦合性和提高模块内的内聚性,有利于提高模块的独立性,所以A)错误,B)正确。耦合性是模块间互相连接的紧密程度的度量而内聚性是指一个模块内部各个元素间彼此结合的紧密程度,所以C)与D)错误。34、数据库应用系统中的核心问题是()。A、数据库设计B、数据库系统设计C、数据库维护D、数据库管理员培训标准答案:A知识点解析:数据库应用系统中的核心问题是数据库的设计。35、程序流程图中带有箭头的线段表示的是()。A、图元关系B、数据流C、控制流D、调用关系标准答案:C知识点解析:在数据流图中,用标有名字的箭头表示数据流。在程序流程图中,用标有名字的箭头表示控制流。所以选择C。36、在窗体上画一个名称为Command1的命令按钮,并编写如下程序:OptionBase1PrivateSubCommand1_Click()Dima(4,4)Fori=1To4Forj=1To4a(i,j)=(i-1)*3+jNextjNextiFori=3To4Forj=3To4Printa(j,i);NextjPrintNextiEndSub运行程序,单击命令按钮,则输出结果为()。A、69710B、710811C、811912D、9121013标准答案:D知识点解析:程序中数组元素赋值如下:第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。37、如果一个菜单项的Enabled属性被设置为False,则程序运行时,该菜单项()。A、不显示B、显示但无效C、有效可用D、不显示但有效可用标准答案:B知识点解析:菜单项默认情况下显示,Enabled属性值为False表示菜单项无效。所以菜单项显示但无效。故选B。38、设子程序过程定义的首部为:PublicSubS(XAsInteger,YAsSingle)则以下正确的调用形式为A、CallS5,4.8B、CallSub(5,4.8)C、Sub5,4.8D、S5,4.8标准答案:D知识点解析:(1)用Call语句调用Sub过程:语法:Call过程名([实参表列]),实参的个数、类型和顺序,应该与被调用过程的形式参数相匹配,有多个参数时,用逗号分隔。(2)把过程名作为一个语句来用:语法:过程名[实参1[,实参2…]],它与(1)的不同点是:去掉了关键字和实参列表的括号。39、下面操作中,不能正确保存正在编辑的工程的是A、鼠标右键单击"工程资源管理器窗口"中该工程的图标,在弹出的菜单中选"保存工程"B、单击"文件"菜单,在下拉菜单中选"保存工程"C、单击"工程"菜单,在下拉菜单中选"保存工程"D、标准答案:C知识点解析:工程的下拉菜单中没有"保存工程"。40、若已把一个命令按钮的Default属性设置为True,则下面可导致按钮的Click事件过程被调用的操作是()。A、用鼠标右键单击此按钮B、按键盘上的Esc键C、按键盘上的回车键D、用鼠标右键双击此按钮标准答案:C知识点解析:当命令按钮的Default属性值为True时,程序运行,按回车键和单击该命令按钮一样都会触发按钮的Click事件;当命令按钮的Cancel属性值为True时,程序运行,按Esc键和单击该命令按钮都会触发按钮的Click事件。故选C。二、基本操作题(本题共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、(1)考生文件夹下有一个工程文什sjt3.vbp。程序的功能是:通过键判向文本框中输入数字,如果输入的是非数字字符,则提示输入错误,且文本框中不显示输入的字符。单击名称为Command1、标题为“添加”的命令按钮,则将文本框中的数字添加到名称为Combo1的组合框中。在给出的窗体文件中已经添加了全部控件,但程序不完整。要求去掉程序中的注释符,把程序中的?改为正确的内容。注意:不能修改程序中的其他部分和其他控件的属性。最后把修改后的文件按原文件名存盘。(2)在考生文件夹下有一个工程文件sjt4.vbp。该程序的功能是计算M!+(M+1)!+(M+2)!+…+N!之和。窗体上有名称分别为Text1、Text2的两个文本框,用于接收输入的M和N(要求M<N)。单击名称为Command1、标题为“计算”的命令按钮,计算M!+(M+1)!+(M+2)!+…+N!的值,并将计算结果显示在标签lblResult中。在给出的窗体文件中已经有了全部控件,但程序不完整,要求去掉程序中的注释符,把程序中的?改为正确的内容。注意:不能修改程序的其他部分和控件属性。最后把修改后的文件按原文件名存盘。标准答案:步骤1:打开本题工程文件。步骤2:打J开代码编辑窗口,去掉程序中的注释符“’”,将问号改为正确的内容。PrivateSubCommand1Click()Comb01.AddItemText1将Text1’中的内容加入Combo1中Text1.Text=""’同时将Text1内容清除EndSubPrivateSubText1KeyPress(KeyAsciiAsInteger)IfKeyAscii>57orKeyAscii<48Then’数字的Ascii码值下界MsgBox"请输入数字!"KeyAscii=0’清空EndIfEndSub步骤3:调试并运行程序,关闭程序后按题目要求存盘。(2)步骤1:打开本题工程文件。步骤2:打开代码编辑窗口,去掉程序中的注释符,将问号改为正确的内容。PrivateSubCommandlClick()DimmAsIntegerDimnAsIntegerDimsAsLongDimiAsIntegerm=Val(Text1.Text)’将文本框中的字符转换成数值型n=Va1(Text2.Text1s=0Fori=mTon—mt=f(i)调用函数得到N的阶乘s=s+tNextiblResult.Caption=sEndSubPrivateFunctionf(ByRefxAsInteger)AsLong’ByRef为传址传递D1mtAsLongt=1Fori=1Tox’实现对数值进行阶乘运算t=t*iNextf=t’返回计算结果EndFunctiOn步骤3:调试并运行程序,关闭程序后按题目要求存盘。知识点解析:(1)单击命令按钮,运用组合框的List属性将文本框中的数字添加到组合框中,通过ASCII码来判断输入的是否为数字字符。(2)Functionf()过程函数用于实现对数值阶乘的运算,Val()函数实现将文本框中的字符转换成数值型,通过循环调用过程函数实现对表达式结果的累加。四、综合应用题(本题共1题,每题1.0分,共1分。)44、在考生文件夹下有一个工程文件sjt5.vbp,相应的窗体文件为sjt5.frm,此外还有一个名为datain.txt的文本文件,其内容如下:32437858281298573142536475869713243546576879805937程序运行后,单击窗体,将把文件datain.txt中的数据输入到二维数组Mat中,按5行、5列的矩阵形式显示在窗体上,并输出矩阵左上一右下对角线上的数据,如图所示。在窗体的代码窗口中,已给出了部分程序,这个程序不完整,请把它补充完整,并能正确运行。要求:去掉程序中的注释符,把程序中的?改为正确的内容,使其实现上述功能,但不能修改程序中的其他部分。最后将修改后的文件按原文件名存盘。标准答案:步骤1:打开本题工程文件。步骤2:分析并编写程序代码。程序提供代码OptionBase1PrivateSubForm_Click()ConstN=5ConstM=5’Dim?Dimi,j’OpenApp.Path&”\”.&”datain.txt“?As#1Fori=1ToNForj=1ToM’?NextjNextiClose#1PrintPrint”初始矩阵为:”PrintFori=1ToNForj=1ToMPrintTab(5*j);Mat(i,j);NextjPrintNextiPrintPrint”左上一右下对角线上的数为:”Fori=1ToNForj=1ToM’If?ThenPrintTab(5*j);Mat(i,j);NextjNcxtiEndSub程序结束第1个?处填入:Mat(N,M)AsInteger或Mat(5,5)AsInteger第2个?处填入:ForInput第3个?处填入:Input#1,Mat(i,j)第4个?处填入:i=j步骤3:调试并运行程序,关闭程序后按题目要求存盘。知识点解析:Tab函数常与Print#语句或Print方法一起使用,对输出进行定位,其语法为:Tab[(n)]其中,可选的参数n表示在显示或打印下一个表达式之前移动的列数。在使用数组时,应先定义。Input#句用于读取顺序文件中一项(或多项)数据给一个变量(或多个变量),其语法格式为:Input#FileNumber,Varlist其中:FileNumber参数表示打开文件的句柄,Varlist为变量列表。语句“OptionBase1”用于限定数组下标的下限默认为1。本题中文件以Input方式打开,使用一个5行、5列的二维数组Mat来存放数据,并使用一个嵌套的For循环显示矩阵,对于5*5的矩阵来说,位于左上到右下对角线上的元素具有行号等于列号的特点。国家二级(VB)机试模拟试卷第2套一、选择题(本题共40题,每题1.0分,共40分。)1、窗体上有一个命令按钮和一个文本框,程序执行后,在文本框中输入12345,单击命令按钮后的输出结果为()。PrivateSubCommandl_Click()DimAAsInteger,BAsIntegerTextl.SelStart=2:Text1.SelLength=2A=Val(Text1.SelText):B=Len(Text1.Text)PrintA*BEndSubA、68B、115C、1700D、170标准答案:D知识点解析:本题考查文本框的常见属性。文本框的SelStart属性和SelLength属性表示选中文本的开始位置和长度,第一个字符的位置为0,SelText表示选中的文本。Val把字符转化为数字。所以A为34,B为5,因此输出为34*5=170。2、窗体上有一个名称为CD1的通用对话框控件和由四个命令按钮组成的控件数组Command1,其下标从左到右分别为0、1、2、3,窗体外观如图所示。命令按钮的事件过程如下:PrivateSubCommand1_Click(IndexAsInteger)SelectCaseIndexCase0CD1.Action=1Case1CD1.ShowSaveCase2CD1.Action=5Case3EndEndSelectEndSub对上述程序,下列叙述中错误的是()。A、单击"打开"按钮,显示打开文件的对话框B、单击"保存"按钮,显示保存文件的对话框C、单击"打印"按钮,能够设置打印选项,并执行打印操作D、单击"退出"按钮,结束程序的运行标准答案:C知识点解析:通用对话框中Action=1,或用ShowOpen方法都可显示"打开"文件对话框;Action=2,或用ShowSave方法都可显示文件"另存为"对话框;Action=3,或用ShowColor方法都可显示"颜色"对话框;Action=4,或用ShowPrint方法都可显示"字体"对话框;Action=5,或用ShowHelp方法都可显示"打印"对话框;本题中,"打开"、"保存"、"打印"、"退出"按钮的下标(即Index值)分别是0、1、2、3,用Index值区分各命令按钮。当Index=0时,CD1.Action=1,说明单击"打开"按钮,会显示"打开"文件对话框;当Index=1时,CD1.ShowSave,说明单击"保存"按钮,会显示文件"另存为"对话框;当Index=3时,End,说明单击"退出"按钮,会结束程序运行。故A、B、D选项正确。当Index=2时,CD1.Action=5,说明单击"打印"按钮,会显示"打印"对话框,但打开对话框后,只能设置打印选项,不能执行打印操作。故C选项错误。3、下列有关过程的叙述中错误的是()。A、如果过程被定义为Static类型,则该过程中的局部变量都是Stmic类型B、Sub过程中不能嵌套定义Sub过程C、Sub过程中可以嵌套调用Sub过程D、事件过程可以像通用过程一样由用户定义过程名标准答案:D知识点解析:本题考查过程。一般在VB中控件本身的事件过程名称为“控件名事件”,另外还可以自定义过程,主要有Sub子过程和Function函数过程,过程可以嵌套调用,但不可以嵌套定义。静态过程中所有的局部变量默认为静态变量。4、用来设置文字字体是否斜体的属性是()。A、FontUnderlineB、FontBoldC、FontSlopeD、FontItalic标准答案:D知识点解析:FontUnderline属性设置文字是否有下划线;FontBold属性是设置文字是否加粗;FontItalic属性是设置文字是否斜体;没有FontSlope属性。故选D。5、下面的数写成普通十进制数是()。2.65358979335278D-6A、0.0000265358979335278B、0.00000265358979335278C、0.000265358979335278D、0.000000265358979335278标准答案:B知识点解析:浮点数也称为实型数或实数,是带有小数部分的数值。它由3部分组成:符号、指数及尾数。例如123.45678D3或123.45678D+3的双精度数,这其中的”123.45678”部分为尾数部分、”E3”为指数部分(E为符号,3为指数),相当于123.45678乘以10的3次幂。中是”D-6”,那么应该是乘以10的负6次幂,所以选项B正确。6、已知变量x、y为整数型,且x=4,y=12.s为字符串型,且s=a,Lblok为标签控件,下列赋值语句不合法的是()。A、x=LblOk.CaptionB、LblOk.caption=Str(x)C、x*3=yD、y=x*s标准答案:C知识点解析:本题考查标签控件的属性。标签控件Caption属性值为字符串,赋值表达式要求赋值号左边必须是变量,不能出现表达式。7、在过程定义中,Private表示()。A、此过程可以被其他过程调用B、此过程不可以被任何其他过程调用C、此过程只可以被本工程中的其他过程调用D、此过程只可以被本窗体模块中的其他过程调用标准答案:D知识点解析:本题考查Private的含义。Private表示了过程或者变量的访问权限,仅局限于定义的窗体和模块,也就是此过程只可以被本窗体模块中的其他过程调用。8、如图2所示,在窗体上有一个文本框控件,名称为TextTime;一个计时器控件,名称为Timer1。要求每1s在文本框中显示一次当前的时间。PrivateSubTimer1__________TextTime.Text=TimeEndSub在下划线上应填入的内容是()。A、EnabledB、VisibleC、Timer()D、Interval标准答案:C知识点解析:本题考查计时器控件。计时器控件只有一个事件,就是Timer()事件,表示触发计时器控件时执行的操作。9、VisualBasic根据计算机访问文件的方式将文件分成3类,其中不包括()。A、顺序文件B、Unix文件C、二进制文件D、随机文件标准答案:B知识点解析:本题考查VB文件的分类。VB中根据文件的访问形式分为顺序文件、随机文件和二进制文件。10、将E-R图转换到关系模式时,实体与联系都可以表示成()。A、属性B、关系C、记录D、码标准答案:B知识点解析:E-R图由实体、实体的属性和实体之间的联系3个要素组成,关系模型的逻辑结构是一组关系模式的集合,将E-R图转换为关系模型:将实体、实体的属性和实体之间的联系转化为关系模式。如下表1所示。11、假定有以下程序段:Fori=1To3Forj=5To1Step-1Printi*jNextjNexti则语句Printi*j的执行次数是()。A、15B、16C、17D、18标准答案:A知识点解析:暂无解析12、在窗体上画两个文本框(名称分别为Text1和Text2)和一个命令按钮(名称为Command1),然后编写如下事件过程:PrivateSubCommand1_Click()x=0DoWhilex<50x=(x+2)*(x+3)n=n+1LoopText1.Text=Str(n)Text2.Text=Str(x)EndSub程序运行后,单击命令按钮,在两个文本框中显示的值分别为()。A、1和0B、2和72C、3和50D、4和168标准答案:B知识点解析:在文本框中显示的值即n,x的值。x初始值已设为0,n的初值没有定义,默认为0。各次循环x,n的值如下:x=(x+2)*(x+3)=(0+2)*(0+3)=2*3=6,n=n+1=0+1=1x=6,满足x<50,循环继续:x=(x+2)*(x+3)=(6+2)*(6+3)=8*9=72,n=n+1=1+1=2x=72,不满足x<50,循环结束。此时n的值为2,x的值为72。13、为了使文本框只具有垂直滚动条,应先把MultiLine属性设置为True,然后再把ScrollBars属性设置为()。A、0B、1C、2D、3标准答案:C知识点解析:文本框的ScrollBars属性值:0表示无滚动条,1表示只有水平滚动条,2表示只有垂直滚动条,3表示水平和垂直滚动条都有。本题文本框只具有垂直滚动条,则ScrollBar属性值就设置为2,故C选项正确。14、标准模块中有如下程序代码:PublicxAsInteger,YAsIntegerSubTempSub()x=10:y=20EndSub在窗体上有1个命令按钮,并有如下事件过程:PrivateSubCommandl_Click()DimxAsIntegerCallTempSubx=x+100:y=y+100Printx;yEndSub运行程序后单击命令按钮,窗体上显示的是()。A、110100B、100100C、100120D、110120标准答案:C知识点解析:在标准模块用:Public关键字声明的全局变量,其作用域最大,可以在工程的每个模块、每个过程中使用。但当不同作用范围的变量重名时,有效范围小的变量会屏蔽有效范围大的变量。当一个全局变量与一个过程级变量重名时,当在本过程中直接使用这个变量名时,被认为是指局部变量。如果要在这个过程中使用同名的全局变量,要使用模块名来修饰变量名。在本题的事件过程中,由于变量x被声明为过程级变量,其初始值为0,调用过程TempSub不会改变其值,而变量y为标准模块中声明的全局变量,调用过程TempSub后其值为20。故最后输出结果为100和120。15、在下列模式中,能够给出数据库物理存储结构与物理存取方法的是()。A、外模式B、内模式C、概念模式D、逻辑模式标准答案:B知识点解析:数据库系统的三级模式是概念模式、外模式和内模式。概念模式是数据库系统中全局数据逻辑结构的描述,是全体用户公共数据视图。外模式也称子模式或用户模式,它是用户的数据视图,给出了每个用户的局部数据描述。内模式又称物理模式,它给出了数据库物理存储结构与物理存取方法,所以选择B。16、有三个关系R,S和T如下:则由关系R和S得到关系T的操作是()。A、自然连接B、交C、投影D、并标准答案:A知识点解析:自然连接是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果中把重复的属性列去掉,所以根据T中元组可以判断R和S做的是自然连接操作。17、以下关于键盘事件的叙述中,错误的是()。A、按下键盘按键既能触发KeyPress事件,也能触发KeyDown事件B、KeyDown、KeyUp事件过程中,大、小写字母被视作相同的字符C、KeyDown、KeyUp事件能够识别Shift、Ah、Ctrl等键D、KeyCode是KeyPress事件的参数标准答案:D知识点解析:当用户按下键盘上的任意键时,会触发当前拥有焦点对象的KeyDown事件,用户松开键盘上任意键时,就会触发KeyUp事件。当用户按下又松开键盘上任意键时,触发KeyPress事件。故A选项正确。KeyDown事件和KeyUp事件均向事件过程返回两个参数KeyCode和Shift。KeyCode参数返回所按键对应的ASCII字符代码的整型数值或键代码常数,大小写字符被看作是相同字符,返回同一个KeyCode值。故B选项正确。Shift参数用于判断用户是否按下Shift、Ctrl和Ah键,若用户按下了对应的键,Shift参数会返回不同的值。根据以上KeyDown和KeyUp事件能识别Shift、Ctrl和Alt键。故C选项正确。KeyPress事件只有一个参数KeyAscii,它可以返回按键对应的Ascii值,大小写字母Ascii值不同。KeyCode不是KeyPress事件的参数。故D选项错误。18、窗体上有文本框Textl和一个菜单,菜单标题、名称见表,结构如图2所示。要求程序执行时单击”保存”菜单项,则把其标题显示在Textl文本框中,下面可实现此功能的事件过程是()。A、PrivateSubsave_Click()save_Click()Textl.Text=file.save.CaptionEndSubB、PrivateSubsave_Click()Textl.Text=save.CaptionEndSubC、PrivateSubfile_Click()Textl.Text=file.save.CaptionEndSubD、PrivateSubfile_Click()Textl.Text=save.CaptionEndSub标准答案:B知识点解析:考查菜单事件。菜单建立以后,对于每个菜单项要进行编写程序,才可以进行处理,单击”保存”命令时,代码窗体自动出现事件过程:PrivateSubsave_Click()EndSub在程序之间加上Textl的Text属性改变代码即可。19、以下叙述中错误的是()。A、续行符与它前面的字符之间至少要有一个空格B、VisualBasic中使用的续行符为下划线(一)。C、以撇号(’)开头的注释语句可以放在续行符的后面D、VisualBasic可以自动对输入的内容进行语法检查标准答案:C知识点解析:续行符“一”与前面的内容至少要保留一个空格,并且续行符只能出现在行尾,后面不能有注释。故选项C错误。20、为了使文本框显示滚动条,除要设置ScrollBars外,还必须设置的属性是()。A、AutoSizeB、AlignmentC、MultilineD、MaxLength标准答案:C知识点解析:为了使文本框显示滚动条,要将ScrollBars的值设置为非0的1、2或3,还要设置Multiline属性为True。21、编写如下程序代码:OptionExplicitPrivateSubForm_Click()DimxAsVariantDimiAsVariantx=Array(50,27,69,80,45)ForEachiInxIfiMod2=0ThenPrintiEndIfNextiEndSub以下叙述中正确的是()。A、程序的功能是输出数组x中的所有奇数B、将语句ForEachiInx改为Fori=0To5,程序功能不变C、变量x和i也可定义为Integer类型,程序功能不变D、程序的功能是输出数组x中的所有偶数标准答案:D知识点解析:程序开始时定义了一个默认数组x和一个变体型变量i,接着通过Array函数给数组赋值,程序的功能是通过ForEach……Next循环依次遍历数组中的元素,若某个元素的值能被2整除,则输出该元素,故最终会输出50和80两个值,D选项叙述正确,其他3项叙述均错误。本题选择D选项。22、在窗体上画一个名称为Command1的命令按钮,编写如下程序代码PrivateTypeStudentsnAsString*10classAsString*20scoreAsDoubleEndTypePrivateSubCommand1_Click()DimSAsStudentDims1AsStudentOpen"C:\Scorelist.dat"ForRandomAs#1Len=Len(s)s.sn="张一帆"s.class="计2014—1班"s.score=90Put#1,,sClose#1EndSub以下叙述中正确的是()。A、若文件C:\Scorelist.dat已存在并且有记录,单击命令按钮,可以修改文件中的一条记录B、若文件C:\Scorelist.dat不存在,则Open语句执行中出现“文件未找到”的错误C、文件C:\Scorelist.dat中的每条记录长度可以不同,但记录最长为Len(S)D、定义记录类型Student的Type语句可以移到事件过程Command1_Click中标准答案:A知识点解析:在Open语句中指定文件的访问方式为输出(Output)、附加(Append)或随机(Randora),若打开的文件不存在,则建立相应的文件。本题中指定的访问方式为Random,所以B选项叙述错误;对于用随机访问方式打开的文件,其每个记录的长度必须是相同的,C选项叙述错误;记录类型的定义必须放在模块(包括标准模块和窗体模块)的声明部分,D选项叙述错误,本题A选项叙述正确。本题选择A选项。23、下列算法中,最坏情况下时间复杂度为O(nlog2n)的是()。A、快速排序B、堆排序C、二分查找法D、顺序查找法标准答案:C知识点解析:对长度为n的线性表排序时,最坏的情况下,快速排序的时间复杂度为O(n2),堆排序的时间复杂度为O(nlog2n)。对于长度为n的线性表进行顺序查找,最坏的情况下,查找次数为n。对于长度为n的有序线性表进行二分法查找,最坏的情况下,查找次数为log2n。故C选项正确。24、程序运行时,拖动滚动条上的滚动框,则所触发的事件是A、MoveB、ScrollC、DragD、DragDrop标准答案:B知识点解析:在滚动条内拖动滚动框时,触发产生Scroll事件。25、为了显示弹出式菜单,要使用A、窗体的PopupMenu方法B、窗体的OpenMenu方法C、菜单的PopupMenu方法D、菜单的OpenMenu方法标准答案:A知识点解析:显示弹出式菜单使用PopupMenu方法。26、以下关于DoUntil…Loop循环的说法正确的是()。A、先进入循环执行语句段落后,再判断是否再进入循环B、先进入循环执行语句段落后,再判断是否不再进入循环C、执行前先判断是否不满足条件,若不满足才进入循环D、执行前先判断是否不满足条件,若满足才进入循环标准答案:C知识点解析:本题考查DoUntil…Loop循环的。对于这种循环结构,条件判断在循环体前,因此有可能一次循环体也不运行。在Until引出的循环条件为False时执行循环体,条件为True时退出循环。27、设有下面程序代码: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、VisualBasicProgramming0B、VisuAlBAsicProgrAmming3C、VisulBsicProgrmming3D、VisualBasicProgramming2标准答案:B知识点解析:Mid$(A$,4,2)是为了与老版本的VB兼容($的作用是强制将函数的返回值设为字符型)。&用来连接字符串。If条件判断字符是否和输入的字符相等,相等则n加1。选B)。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、假定有以下程序段:Fori=1To3Forj=5To1Step-1Printi*jNextjNexti则语句Printi*j的执行次数是()。A、15B、16C、17D、18标准答案:A知识点解析:30、将E-R图转换为关系模式时,E-R图中的属性可以表示为A、属性B、键C、关系D、域标准答案:A知识点解析:暂无解析31、计算下面分段函数的正确语句是()。A、y=IIf(x>0,x+1,IIf(x<0,x-1,0))B、y=IIf(x=0,0,IIf(x>0,x-1,x+1))C、y=IIf(x>0,x+1,IIf(x<0,0,x-1))D、y=IIf(x=0,0,x-1,x+1)标准答案:A知识点解析:IIF是条件函数,它的语法格式是:IIf(<条件表达式>,<表达式为True时的取值>,<表达式为False时的取值>)B选项中,内层的IIF函数中,当x>0时,x+1,否则x-1,所以应该是IIf(x>0,x+1,x-1)。C选项中,内层的IIf函数中,当x<0时,x-1,否则0,所以应该是IIf(x<0,x-1,0)。D选项中IIf函数中有4个参数不对,应该有3个参数。故B、C、D选项均错误,A选项正确。32、在窗体上画多个控件,其中有一个名称为Text1的文本框,影响Text1的Tab顺序的属性是A、TabStopB、EnabledC、VisibleD、TabIndex标准答案:D知识点解析:TabStop属性指定是否能使用Tab键将焦点移到控件上,为True可以获得焦点,为False不可获得焦点,故选项A错误;Enabled属性用来确定文本框或其他可获得焦点的控件,是否对用户产生的事件作出反应,故当为False时,文本框被禁用,当为True,可以获得焦点,故选项B错误;Visible设置控件是否可见,故选项C错误;控件的TabIndex属性决定了Tab顺序,故本题正确答案为选项D。33、在窗体上画一个名称为Command1的命令按钮,然后编写以下程序代码:OptionBase1PrivateSubCommand1_Click()DimdataAsVariant,mAsInteger,nAsIntegerm=Val(InputBox("输入"))data=Array(-2,-1,0,1,2)Callser(data,m,n)PrintnEndSubPrivateSubser(d,a,b)DimmAsInteger,nAsInteger,kAsIntegerDimiAsIntegerm=LBound(d):n=UBound(d)k=(m+n)/2DoWhilem<nAndd(k)<>aIfa<d(k)Thenn=k-1Ifa>d(k)Thenm=k+1k=(m+n)/2LoopIfd(k)=aThenb=kElseb=-1EndSub程序运行过程中单击命令按钮Command1,在出现的输入对话框中输入"-1"并回车后,则程序的输出结果为A、-1B、1C、2D、-2标准答案:C知识点解析:InputBox函数可以产生一个对话框,作为输入数据的界面,等待用户输入数据,并且返回输入的内容。类型转换函数Val(s),返回值为字符串表达式s中所包含的数值,若遇到字母(指数符号除外)则终止转换。m=Val(InputBox("输入"))=Val(-1)=-1。变体型数组data。用Call语句调用Sub过程。如果形参前面有关键字ByVal,则该参数以传值方式传送。默认是按地址传递,data,m,n把地址传给了形参d,a,b后,d,a,b值的变化会引起相应实参值的变化。在过程ser中,UBoun
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年个人房产买卖第三方担保协议样本版
- 2024年度企业形象策划与推广合同
- 学校大班班级发展方案计划
- 班主任如何进行时间管理计划
- 2024年度人工智能技术研发服务协议2篇
- 2024年国际物流运输服务协议版B版
- 2024年变压器订购合同协议3篇
- 2024年土方劳务分包合同模板3篇
- 隐私玻璃膜施工合同
- 教育行业教师聘用合同模板
- 金融服务外包战略策划书
- TCALC 003-2023 手术室患者人文关怀管理规范
- 航天工程的技术规范与质量管理
- 2024年上海市第二十七届初中物理竞赛初赛试题及答案
- 红旗汽车促销策划方案
- 小学科学人教鄂教版四年级上册期末练习题(2022秋)(附参考答案)
- 开展优生优育知识讲座
- 大数据分析与市场预测模型
- 《中国的海洋资源》示范课教学设计【湘教版八年级地理上册】
- 城市污水处理厂水质检测与安全生产
- 《食品毒理学》课件
评论
0/150
提交评论