版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
国家二级VB机试(综合应用题)模拟试卷3(共4套)(共40题)国家二级VB机试(综合应用题)模拟试卷第1套一、综合应用题(本题共10题,每题1.0分,共10分。)1、在考生文件夹下有一个工程文件sjt5.vbp,其名称为Form1的窗体上已有三个文本框Text1、Text2、Text3,以及部分程序代码,请完成以下工作。①在属性窗口中修改Text3的适当属性,使其在运行时不显示,作为模拟的剪贴板使用,窗体如图所示。②建立下拉式菜单,如下表所示。③窗体文件中给出了所有事件过程,但不完整,请去掉程序中的注释符,把程序中的?改为正确的内容,以便实现如下功能:当光标所在的文件框中无内容时,“剪切”、“复制”不可用,否则可以把该文本框中的内容剪切或复制到Text3中;若Text3中无内容,则“粘贴”不能用,否则可以把Text3中的内容粘贴在光标所在的文本框中的内容之后。注意:不能修改程序中的其他部分,各菜单项的标题名称必须正确。最后将修改后的文件按原文件名存盘。标准答案:[操作步骤]步骤1:打开本题工程文件,将Text3的Visible属性设置为False,然后按照题目要求建立菜单并设置其属性,如图3.20所示。菜单属性如表3.12所示。步骤2:打开代码编辑窗口,去掉程序中的注释符“’”,将问号改为正确的内容。参考代码(画下划线部分是需填入的内容)DimwhichAsIntegerPrivateSubcopy_Click()’复制按钮Ifwhich=1Then’当焦点在Text1中,将Text1中的内容复制给Text3Text3.Text=Text1.TextElseIfwhich=2Then’同理,焦点在Text2中,将Text2中的内容复制给Text3Text3.Text=Text2.TextEndIfEndSubPrivateSubcutClick()’剪切按钮Ifwhich=1Then’当焦点在Text1中,则将内容复制给Text3,并清空Text1内容Text3.Text=Text1.TextText1.Text=""ElseIfwhich=2Then’同上Text3.Text=Text2.TextText2.Text=""EndIfEndSubPrivateSubeditClick()’编辑Ifwhich=1ThenIfText1.Text=""ThenCut.Enabled=FalseCopy.Enabled=FalseElseCut.Enabled=TrueCopy.Enabled=TrueEndIfElseIfwhich=2ThenIfText2.Text=""ThenCut.Enabled=FalseCopy.Enabled=FalseElseCut.Enabled=TrueCopy.Enabled=TrueEndIfEndIfIfText3.Text=""ThenPaste.Enabled=FalseElsePaste.Enabled=TrueEndIfEndSubPrivateSubpasteClick()’粘贴按钮Ifwhich=1Then’当焦点在Text1中则将Text3的内容追加到Text1文件末尾Text1.Text=Text1.Text+Text3.TextElseIfwhich=2Then’同上Text2.Text=Text2.Text+Text3.TextEndIfEndSubPrivateSubText1GotFocus()’本过程的作用是当焦点在Text1中时,which=1whiCh=1EndSubPrivateSubText2GotFocuS()’本过程的作用是当焦点在Text2中时,which=2which=2EndSub步骤3:调试并运行程序,关闭程序后按题目要求存盘。知识点解析:暂无解析2、在考生文件夹下有一个工程文件sjt5.vbp,窗口有2个名称分别为Command1和Command2、标题分别为“读数据”和“排序”的命令按钮,有2个标题分别为“数组A”和“数组B”的标签。请将窗体标题设置为“完全平方数排序”;再画2个名称分别为Text1和Text2、初始内容都为空的文本框,并且可多行显示,有垂直滚动条,如图3—55所示。程序功能如下:1)单击“读数据”按钮,则把考生文件夹下in5.dat文件中的100个正整数读入数组A,并将它们显示在Text1文本框中。2)单击“排序”按钮,则首先将这100个数中的所有完全平方数放入数组B中,并将它们按降序排列显示在Text2文本框中。提示:一个整数若是另一个整数的平方,那么它就是完全平方数。如144=122,所以144就是一个完全平方数。要求:去掉注释符,把?改为正确内容,并添加代码使得“排序”命令按钮的Click事件过程可以实现上述功能。提示:Sort过程可以把求出的完全平方数进行排序,可以直接调用。注意:考生不得修改窗体文件中已经存在的控件和程序,在结束程序运行之前,必须进行“排序”,且须用窗体右上角的关闭按钮结束程序,否则无成绩。最后,程序按原文件名存盘。标准答案:【操作步骤】步骤1:打开考生文件夹下的工程文件sjt5.vbp,在码编辑窗口的指定位置输入以下代码。参考代码:’考生编写的代码n=0Fork=1To100Ifa(k)>0Thend=Sqr(a(k))IfInt(d)=dThenn=n+1:b(n)=a(k)EndIfEndIfNext步骤2:在代码编辑窗口中,去掉程序中的注释符“’”,将问号“?”改为正确的内容。参考代码:Callsort(b,n)步骤3:按键运行程序,单击“读数据”按钮,然后单击“排序”按钮,最后单击窗体右上角的关闭按钮结束程序。步骤4:按要求将文件保存至考生文件夹中。知识点解析:暂无解析3、在考生文件夹下有一个数据库文件“samp3.accdb”,里面已经设计了表对象“tEmp”、窗体对象“fEmp”、报表对象“rEmp”和宏对象“mEmp”。请在此基础上按照以下要求补充设计。(1)设置表对象“tEmp”中“聘用时间”字段的有效性规则为:2006年9月30日(含)以前的时间。相应有效性文本设置为:输入二零零六年几月以前的日期。(2)设置报表“rEmp”按照“年龄”字段降序排列输出;将报表页面页脚区域内名为“tPage”的文本框控件设置为“页码-总页数”形式的页码显示(如1-15、2-15、…)。(3)将“fEmp”窗体上名为“bTitle”的标签宽度设置为5厘米、高度设置为1厘米,没置其标题为“数据信息输出”并居中显示。(4)在“fEmp”窗体上单击“输出”命令按钮(名为“btnP”),实现以下功能:计算Fibonacci数列第19项的值,将结果显示在窗体上名为“tData”的文本框内并输出到外部文件保存;单击“打开表”命令按钮(名为“btnQ”),凋用宏对象“mEmp”以打开数据表“tEmp”。Fibonacci数列:F1=1n=1F2=1n=2Fn=En-1+En-2n>=3调试完毕后,必须单击“输出”命令按钮生成外部文件,才能得分。试根据上述功能要求,对已给的命令按钮事件进行补充和完善。注意:不要修改数据库中的宏对象“mEmp”;不要修改窗体时象“lEtup’’和报表对象“rEmp”中未涉及的控件和属性;不要修改表对象“tEmp”中未涉及的字段和属性。程序代码只允许在“*****Add*****”与“*****Add*****”之间的空行内补充一行语句、完成设计,不允许增删和修改其他位置已存在的语句。标准答案:(1)【操作步骤】步骤1:选择“表”对象,右键单击“tEmp”,从弹出的快捷菜单中选择“设计视图”命令。步骤2:单击“聘用时间”字段行任一点,在“有效性规则”行输入“<=#2006-9-30#”,在“有效性文本”行输入“输入二零零六年九月以前的日期”。如图3.308所示。步骤3:按Ctrl+S保存修改,关闭设计视图。(2)【操作步骤】步骤1:选择“报表”对象,右键单击“rEmp”,从弹出的快捷菜单中选择“设计视图”命令。步骤2:单击“设计”选项卡“分组和汇总”组中的“分组和排序”按钮,在“分组、排序和汇总”界面选择“添加排序”,选择“排序依据”下拉列表中的“年龄”字段.选择“降序”,关闭界面,如图3.309所示。步骤3:右键单击“tPage”,从弹出的快捷菜单中选择“属性”命令,在“全部”选项卡“控件米源”行输入“=[Page]&"-"&[Pages]”,关闭属性表。如图3.310所示。步骤4:按Ctrl+S保存修改,关闭设计视图。(3)【操作步骤】步骤1:选中“窗体”对象,右键单击“fEmp”,从弹出的快捷菜单中选择“设计视图”命令。步骤2:右键单击标签控件“bTitle”,从弹出的怏捷菜单中选择“属性”命令,在“标题”行输入“数据信息输出”,在“宽度”和“高度”行分别输入“5cm”和“1cm”,并在“文本对齐”行右侧下拉列表中选择“居中”,如图3.311所示,关闭属性表。(4)【操作步骤】步骤1:右键单击命令按钮“输出”,从弹出的快捷菜单中选择“事件生成器”命令,在弹出的对话框中选择“代码生成器”,进入编程环境,在空行内输入以下代码:′*****Add1*****Dimf(19)AsInteger′*****Add1*****′*****Add2*****r(i)=f(i-1)+f(i-2)′*****Add2*****′*****Add3*****tData=f(19)′*****Add3*****如图3.312所示,关闭界面。步骤2:按Ctrl+S保存修改,关闭设计视图。知识点解析:暂无解析4、在考生目录下有一个工程文件vbsj5.vbp,用来计算勾股定理整数组合的个数。勾股定理中3个数的关系是:a2+b2=c2。例如,3、4、5就是一个满足条件的整数组合(注意:a,b,c分别为4,3,5与分别为3,4,5被视为同一个组合,不应该重复计算)。编写程序,统计三个数均在60以内满足上述关系的整数组合的个数,并显示在标签Lb11中,运行时程序界面如图3—146所示。注意:不得修改原有程序的控件的属性。在结束程序运行之前,必须至少正确运行一次程序,将统计的结果显示在标签中,否则无成绩。最后把修改后的文件按原文件名存盘。标准答案:【操作步骤】步骤1:打开考生文件夹下的工程文件vbsj5.vbp,在码编辑窗口的指定位置输入代码。参考代码:PrivateSubCommand1_Click()’===考生编写程序开始====DimiAsInteger,jAsIntegerDimnAsIntegerFori=1To59Forj=iTo60IfSqr(i*i+j*J)=Int(Sqr_(i*i+j*j))AndSqr(i*i+j*j)<=60Thenn=n+1EndIfNextNextLb11.Caption=n’===考生编写程序结束====’不要改动以下内容SaveLabe11EndSub步骤2:按键运行程序,单击“计算”按钮。步骤3:按要求将文件保存至考生文件夹中。知识点解析:暂无解析5、在考生文件夹下有一个工程文件sjt5.vbp,其窗体上画有两个名称分别为Text1、Text2的文本框,其中Text1可多行显示。请画两个名称为Command1、Command2,标题为“产生数组”、“查找”的命令按钮。如图1-78所示。程序功能如下:①单击“产生数组”按钮,则用随机函数生成10个0~100之间(不含0和100)互不相同的数值,并将它们保存到一维数组a中,同时也将这10个数值显示在Text1文本框内;②单击“查找”按钮将弹出输入对话框,接收用户输入的任意一个数,并在一维数组a中查找该数,若查找失败,则在Text2文本框内显示该数“不存在于数组中”;否则显示该数在数组中的位置。要求:请去掉程序中的注释符,把程序中的?改为正确的内容,使其实现上述功能,但不能修改窗体文件中已经存在的控件和程序。最后把修改后的文件按原文件名存盘。标准答案:【操作步骤】步骤1:打开考生文件夹中的本题工程文件sjt5.vbp,在窗体上画两个命令按钮,属性及其值如表2-20所示。步骤2:在代码编辑窗口,去掉程序中的注释符“’”,将问号“?”改为正确的内容。参考代码:a(i)=Fix(Rnd*99+1)Forj=1Toi–1i=i–1Ifa(i)=numThenIfi>10Then步骤3:按要求将文件保存至考生文件夹中。知识点解析:暂无解析6、在考生文件夹下有一个工程文件sjt5.vbp,其功能是:①单击“读数据”按钮,则把考生文件夹下in5.dat文件中的100个正整数读入数组a中,同时显示在Text1文本框中;②单击“素数”按钮,则将数组a中所有素数(只能被1和自身整除的数称为素数)存入数组b中,并将数组b中的元素显示在文本框Text2中。在给出的窗体文件中已经有了全部控件(如图1-211所示),但程序不完整。要求:完善程序使其实现上述功能。注意:考生不得修改窗体文件中已经存在的控件和程序,在结束程序运行之前,必须先执行“素数”操作,然后再用窗体右上角的关闭按钮结束程序,否则无成绩。最后,程序按原文件名存盘。标准答案:【操作步骤】步骤1:打开考生文件夹中的本题工程文件sjt5.vbp,在代码编辑窗口指定位置编写以下代码:参考代码:Fori=1To100flag=0Forj=2Toa(i)-1Ifa(i)/j=Fix(a(i)/j)Thenflag=1ExitForEndIfNextIfflag=0Thennum=num+1b(num)=a(i)EndIfNext步骤2:按<F5>键运行程序,先单击“读数据”按钮,再单击“素数”按钮,最后单击窗体右上角的关闭按钮结束程序。步骤3:按要求将文件保存至考生文件夹中。知识点解析:暂无解析7、在考生文件夹中有一个工程文件sjt5.vbp,窗体如图1-216所示。运行程序时,从数据文件中读取学生的成绩。要求编写程序,统计总人数、平均分(四舍五入取整)、及格人数和不及格人数,将统计结果显示在相应的文本框中。结束程序之前,必须单击“保存”按钮,保存统计结果。注意:不能修改程序的其他部分和控件属性。程序调试通过后,运行程序,将统计结果显示在文本框中,再单击“保存”按钮保存数据,否则无成绩。最后把修改后的文件按原文件名存盘。标准答案:【操作步骤】步骤1:打开考生文件夹下的本题工程文件sjt5.vbp,打开代码编辑窗口,编写“统计”按钮的单击事件过程。参考代码Text1.Text=nSum=0count1=0count2=0Fori=1TonSum=Sum+arr(i)Ifarr(i)<60Thencount1=count1+1Elsecount2=count2+1EndIfAvg=Sum/nNextText2.Text=Int(Avg+0.5)Text3.Text=count1Text4.Text=count2步骤2:按要求将文件保存至考生文件夹中。知识点解析:暂无解析8、考生文件夹下有一个工程文件sjt5.vbp,请在窗体上建立含有三个菜单项的菜单(菜单项名称分别为Read、Calc和Save,标题分别为“读入数据”、“计算并输出”和“存盘”),然后画一个文本框(名称为Text1,MultiLine属性设置为True,ScrollBars属性设置为2)(如图1-277所示)。程序运行后,如果单击“读入数据”按钮,则调用ReadData过程读入datain1.txt文件中的100个整数,放入一个数组中,数组的下界为1;如果单击“计算并输出”按钮,则把该数组中下标为奇数的元素在文本框中显示出来,并求出它们的和,最后把所求得的和在窗体上显示出来;如果单击“存盘”按钮,则调用WriteData过程把所求得的和存入考生文件夹下的dataout.txt文件中。ReadData过程和WriteData过程已经给出,请编写Read、Calc和Save菜单项的Click事件过程,实现上述功能。注意:考生不得修改窗体文件中已经存在的程序。存盘时,工程文件名为sjt5.vbp,窗体文件名为sjt5.frm。标准答案:【操作步骤】步骤1:打开考生文件下的本题工程文件sjt5.vbp,利用菜单设计器,如表2-147中的设置建立菜单项。步骤2:在窗体Form1中画一个文本框,其相关属性及值如表2-148。步骤3:在代码编辑窗口,分别编写三个菜单项的Click事件过程。参考代码:DimSumAsIntegerPrivateSubRead_Click()ReadDataEndSubPrivateSubCalc_Click()DimSAsStringSum=0Fori=1To100IfiMod2<>0ThenSum=Sum+Arr(i)S=S&Str(Arr(i))&""EndIfNextiForm1.Text1.Text=SMe.Print"Sum=";SumEndSubPrivateSubSave_Click()WriteData"Dataout.txt",SumEndSub步骤4:按要求将文件保存至考生文件夹中。知识点解析:暂无解析9、在名称为Form1的窗体上画一个文本框,其名称为Text1,可以多行显示,并有垂直滚动条;然后再画三个命令按钮,其名称分别为Command1、Command2和Command3,标题分别为“取数”、“排序”和“存盘”,如图1-297(a)所示,编写适当的事件过程。程序运行后,如果单击“取数”命令按钮,则将in5.txt文件中的100个整数读到数组中,并在文本框中显示出来,如图1-297(b)所示;如果单击“排序”命令按钮,则对这100个整数按从大到小的顺序进行排序,并把排序后大于500的数在文本框中显示出来;如果单击“存盘”命令按钮,则把文本框中所有的数(即排序后大于500的数)保存到考生文件夹下的文件out5.txt中。注意:1)必须把排序后大于500的所有整数保存到文件out5.txt中,否则没有成绩。2)存盘时必须存放在考生文件夹下,工程文件名为sjt5.vbp,窗体文件名为sjt5.frm。标准答案:【操作步骤】步骤1:新建一个“标准EXE”工程。步骤2:在窗体Form1中加入一个文本框和三个命令按钮,并分别设置它们的相关属性,属性及值如表2-159所示。步骤3:打开代码编辑窗口,编写三个命令按钮的单击事件代码。参考代码:PrivateN(100)AsIntegerPrivateSubCommand1_Click()Open"in5.txt"ForInputAs#1Fori=1To100Input#1,N(i)Text1=Text1&""&N(i)NextiClose#1EndSubPrivateSubCommand2_Click()Dimi,jAsIntegerFori=1To100Forj=iTo100IfN(i)<N(j)Thentmp=N(i)N(i)=N(j)N(j)=tmpEndIfNextjNextiText1.Text=""Fori=1To100IfN(i)>500ThenText1=Text1&""&N(i)EndIfNextiEndSubPrivateSubCommand3_Click()Open"out5.txt"ForOutputAs#1Write#1,Text1.TextClose#1EndSub步骤4:按要求将文件保存在考生文件夹中。步骤5:运行程序,先单击“取数”按钮,然后单击“排序”按钮,最后单击“存盘”按钮。知识点解析:暂无解析10、在考生文件夹下有一个工程文件sjt5.vbp。程序功能为:在文本框Text1中输入一个正整数N后,单击“计算”按钮,则计算11+22+33+…+NN,并将计算结果显示在Text2中。程序中的函数f可以计算mm的值。在给出的窗体文件中已经有了全部控件,但程序不完整。要求:去掉程序中的注释符,把程序中的?改为正确的内容,并编写相应的程序,实现程序的功能,并且必须在运行时计算N=8时的结果。注意:不能修改程序的其他部分和控件属性。最后把修改后的文件按原文件名存盘。程序调试通过后,必须计算N=8时的结果,否则无成绩。标准答案:审题分析函数f利用一个For循环来计算m的m次幂,需要先设置一个累乘积变量初值为1,然后循环m次,在循环中每次在累乘积上乘以m。循环结束时将累乘积作为函数返回值。在“计算”按钮的单击事件中,要求一个数列的累加和,需要先设置累加和变量初值为0,然后使用For循环循环n次,在每次循环中为累加和变量累加f(j),循环结束后累加和变量的值即为所求。操作步骤步骤1:打开考生文件夹下的工程文件sjt5.vbp,在码编辑窗口的指定位置输入以下代码:参考代码:PriVateSubCommand1_Click()′======考生编写程序开始======Dimi,jAsInteger,kAsLongi=Text1.Textk=0Forj=1Toik=k+f(j)NextText2.Text=k′=====考生编写程序结束======OpenApp.Path&"\out5.dat"ForOutputAs#1Print#1,Text1,Text2Close#1EndSub步骤2:在代码编辑窗口中,去掉程序中的注释符“′”,将问号“?”改为正确的内容。参考代码:s=1s=s*mf=s步骤3:按键运行程序,在文本框中输入8,单击“计算”按钮。步骤4:按要求将文件保存至考生文件夹中。考点链接For。循环结构、Sub过程和函数过程。知识点解析:暂无解析国家二级VB机试(综合应用题)模拟试卷第2套一、综合应用题(本题共10题,每题1.0分,共10分。)1、以下数列:1,1,2,3,5,8,13,21…的规律是从第3个数开始,每个数都是其前面两个数之和。在考生文件夹下有一个工程文件sjt5.vbp。窗体中已经给出了所有控件,如图所示。请编写适当的事件过程完成如下功能:选中一个单选按钮后,单击“计算”按钮,则计算出上述数列第n项的值,并在文本框中显示,n是选中的单选按钮后而的数值(提示:因计算结果较大,应使用艮整型变量)。注意:小能修改已经给出的程序和已有的控件的属性;在结束程序运行之前,必须选中一个单选按钮,并单击“计算”按钮以获得一个结果;必须使用窗体右上角的关闭按钮结束程序,否则无成绩。最后把修改后的文件按原文件名存盘。标准答案:【操作步骤】步骤1:打开本题工程文件。步骤2:打开代码编辑窗口,在指定位置编写如下代码。参考答案PrivateSubCommand1C1ick()Dima()AsLongDimiAsIntegerDimnAsInteger’Op1.Count是单选按钮数目,这里用的是控件数组Fori=0ToOp1.Count-1’判断哪一项被选择,把它后面的数值赋给n,确定n值IfOp1(i).Value=TrueThenn=Val(Op1(i).Caption)ExitForEndIfNextReDima(n)’重新申请空间,这里是动态申请a(1)=1a(2)=1’数列第一项、第二项值确定Fori=3Tona(i)=a(i-1)+a(i-2)’后一项值是前两项值之和NextText1.Text=a(n)EndSub步骤3:调试并运行程序,关闭程序后按题目要求存盘。知识点解析:暂无解析2、在考生文件夹下有一个工程文件sjt5.vbp。程序运行时,单击“显示数据”按钮,则将考生文件夹下in5.dat文件的内容读入一维数组a中,并按下标顺序将数组a各元素的值显示在List1列表框中;单击“移动”按钮,则将数组a中的最大值移动到数组的最前面,其他数据的排列顺序不变,并将移动后的结果显示在List2列表框中。单击“保存”按钮,则保存移动后的结果。要求:“显示数据”和“保存”按钮的Click事件过程已经给出,请编写“移动”按钮的Click事件过程实现上述功能。程序窗体界面如图3—45所示。注意:考生不得修改窗体文件中已经存在的控件和程序,在结束程序运行之前必须单击“移动”按钮,并单击“保存”按钮保存结果,否则无成绩。最后程序按原文件名存盘。标准答案:步骤1:打开考生文件夹中的工程文件sjt5.vbp,在代码编辑窗口中,去掉程序中的注释符“’”,将问号“?”改为正确的内容。参考代码:PrivateSubCommand2_Click()’======考生编写的程序============DimnAsInteger,sAsStringDimi,jAsIntegern=0:j=0Fori=1To10Ifa(i)>nThenn=a(i):j=iEndIfNextFori=jTo2step-1a(i)=a(i-1)Nexta(1)=nForj=1To10List2.AddItem(a(i))Nexti’==============================EndSub步骤2:按<F5>运行程序,单击各按钮测试验证。步骤3:按要求将文件保存至考生文件夹中。知识点解析:只需要完成“移动”命令按钮的Click事件代码.根据题目要求在点击移动命令按钮,找出数组a的最大值,可以通过循环来查找最大值;接下来把最大值移动到数组的最前面,即把最大值前面的数往后移动一个位置,然后把最大值放到第一个元素位置,移动过程同样通过循环实现;最后一步是通过循环,把数组a的内容添加到List2列表框罩面。3、在考生文件夹下有一个工程文件sjt5.vbp,其名称为Form1的窗体上已有三个文本框Text1、Text2、Text3,以及部分程序代码,请完成以下工作。①在属性窗口中修改Text3的适当属性,使其在运行时不显示,作为模拟的剪贴板使用,窗体如图所示。②建立下拉式菜单,如下表所示。③窗体文件中给出了所有事件过程,但不完整,请去掉程序中的注释符,把程序中的?改为正确的内容,以便实现如下功能:当光标所在的文件框中无内容时,“剪切”、“复制”不可用,否则可以把该文本框中的内容剪切或复制到Text3中;若Text3中无内容,则“粘贴”不能用,否则可以把Text3中的内容粘贴在光标所在的文本框中的内容之后。注意:不能修改程序中的其他部分,各菜单项的标题名称必须正确。最后将修改后的文件按原文件名存盘。标准答案:[操作步骤]步骤1:打开本题工程文件,将Text3的Visible属性设置为False,然后按照题目要求建立菜单并设置其属性,如图3.20所示。菜单属性如表3.12所示。步骤2:打开代码编辑窗口,去掉程序中的注释符“’”,将问号改为正确的内容。参考代码(画下划线部分是需填入的内容)DimwhichAsIntegerPrivateSubcopy_Click()’复制按钮Ifwhich=1Then’当焦点在Text1中,将Text1中的内容复制给Text3Text3.Text=Text1.TextElseIfwhich=2Then’同理,焦点在Text2中,将Text2中的内容复制给Text3Text3.Text=Text2.TextEndIfEndSubPrivateSubcutClick()’剪切按钮Ifwhich=1Then’当焦点在Text1中,则将内容复制给Text3,并清空Text1内容Text3.Text=Text1.TextText1.Text=""ElseIfwhich=2Then’同上Text3.Text=Text2.TextText2.Text=""EndIfEndSubPrivateSubeditClick()’编辑Ifwhich=1ThenIfText1.Text=""ThenCut.Enabled=FalseCopy.Enabled=FalseElseCut.Enabled=TrueCopy.Enabled=TrueEndIfElseIfwhich=2ThenIfText2.Text=""ThenCut.Enabled=FalseCopy.Enabled=FalseElseCut.Enabled=TrueCopy.Enabled=TrueEndIfEndIfIfText3.Text=""ThenPaste.Enabled=FalseElsePaste.Enabled=TrueEndIfEndSubPrivateSubpasteClick()’粘贴按钮Ifwhich=1Then’当焦点在Text1中则将Text3的内容追加到Text1文件末尾Text1.Text=Text1.Text+Text3.TextElseIfwhich=2Then’同上Text2.Text=Text2.Text+Text3.TextEndIfEndSubPrivateSubText1GotFocus()’本过程的作用是当焦点在Text1中时,which=1whiCh=1EndSubPrivateSubText2GotFocuS()’本过程的作用是当焦点在Text2中时,which=2which=2EndSub步骤3:调试并运行程序,关闭程序后按题目要求存盘。知识点解析:暂无解析4、考生文件央下有一个工程文件sjt5.vbp。运行程序后,从文件中读出数据,将其放入一个5×5的删二维数组a中。请编写程序,找出数组a中每行的最大值及该值在行中的次序(列下标),并将所找到的结果分别保存到一维数组b、c中(a中第一行的最大值保存在b(1)中,最大值的列次序保存在c(1)中)。注意:不能修改程序的其他部分和控件属性,最后将修改后的文件按原文件名存盘。程序调试通过后,命令按钮的事件过程必须至少执行一次。标准答案:【操作步骤】步骤1:打开本题上程文件。步骤2:打开代码编辑窗口,在指定位置编写如下代码。参考答案Max=a(i,1)’将每行第一个数作为该行最大值,以便进行比较Forj=1To5IfMax<a(i,j)Then’依次循环比较该行其他数,如有更大值,则替换max值Max=a(i,j)EndIfb(i)=Max’最大值存入数组b中IfMax=a(i,j)Thenc(i)=j’最大值的下标存入数纽c中Nextj步骤3:调试并运行程序,关闭程序后按题目要求存盘。知识点解析:暂无解析5、在考生文件夹下有一个工程文件sil5.vbp,在窗体上给出了所有控件和不完整的程序,请去掉程序中的注释符,把程序中的“?”改为正确的内容。本程序的功能是:如果单击“取数”按钮,则把考生目录下的in5.txt文件中的15个姓名读到数组a中,并在窗体上显示这些姓名;当在Text1中输入一个姓名,或一个姓氏后,如果单击“查找”按钮,则进行查找,若找到,就把所有与Text1中相同的姓名或所有具有Text1中姓氏的姓名显示在Text2中(如图3—101所示);若未找到,则在Text2中显示“未找到!”;若Text1中没有查找内容,则在Text2中显示“未输入查找内容!”。注意:考生不得修改程序的其他部分和控件的属性,最后把修改后的文件按原文件名存盘。标准答案:【操作步骤】步骤1:打开考生文件夹中的本题工程文件sjt5.vbp,打开代码编辑窗口,去掉程序中的注释符“’”,将问号“?”改为正确的内容。参考代码:Close#1n=Len(Text1.Text)IfLeft(a(k),n)=Text1.TextThenc=c+""+a(k)Text2.Text=c步骤2:按要求将文件保存至考生文件夹中。知识点解析:暂无解析6、在考生文件夹下有一个工程文件sjt5.vbp,考生文件夹下in5.dat文件中保存有一篇英文短文。程序运行时,单击“读取并统计”按钮,则按行读取in5.dat文件的内容,并显示到文本框Text1中,同时调用Calculate过程统计每个英文字母(不区分大小写)及其出现的次数,并按字母顺序保存到二维数组data中,统计结束后,按字母顺序将统计结果显示到列表框List1中(字母用小写表示,且不含文中未出现的字母);单击“保存”按钮,则保存结果。“读取并统计”和“保存”按钮的(Click事件过程已经给出,请编写Calculate过程中的代码以实现上述功能。程序运行界面示意图如图所示。注意:考生不得修改窗体文件中已经存在的控件和程序,在结束程序运行之前,必须进行“读取并统计”,且必须单击“保存”按钮保存结果,否则无成绩。最后,程序按原文件名存盘。标准答案:【操作步骤】步骤1:打开本题项目工程。步骤2:打开代码编辑窗口,填入相应的代码以实现题目的功能。参考答案PrivateSubCalculate(sAsString,d()AsVailant)DimchAsStringDimiAsIntegerFori=1ToLen(s)ch=Asc(LCase(Mid(s,i,1)))Ifch>=97Andch<=122Thend(ch-96,1)=Chr(ch)d(ch-96,2)=d(ch-96,2)+1EndIfEndSub步骤3:调试并运行程序,结果如图4.10所示,关闭程序后按题目要求存盘。知识点解析:暂无解析7、在考生文件夹下有一个工程文件sjt5.vbp。其窗体中有一个名称为Text1的文本框数组,下标从0开始。程序运行时,单击“产生随机数”按钮,就会产生10个3位数的随机数,并放入Text1数组中,如图3—183(a)所示;单击“重排数据”按钮,将把Text1中的奇数移到前面,偶数移到后面,如图3—183(b)所示。文件中已经给出了所有控件和部分程序。要求:请去掉程序中的注释符,把程序中的“?”改为正确的内容,使其能正确运行,不能修改程序的其他部分和控件属性。最后把修改后的文件按原文件名存盘。提示:在“重排数据”按钮的事件过程中有对其算法的文字描述,请仔细阅读。标准答案:步骤1:打开考生文件夹中的本题工程文件sjt5.vbp,在代码编辑窗口,去掉程序中的注释符“’”,将问号“?”改为正确的内容。参考代码:j=9temp=Text1(j)While(i<j)IfText1(j)Mod2=1Then步骤2:按要求将文件保存至考生文件夹中。知识点解析:本题源程序中,变量i和j均用作Text1文本框数组的索引号(即Index属性值),根据算法中的第1条,可知i=0、j=9、temp=Text1(i),其中“暂存最后一个数”的目的是为空出一个位置放第一个偶数。根据算法中的第3条,检查第j个数是否为奇数的条件表达式为:Text1(j)Mod2=1。算法中的第2条和第3条交替运行,将实现一后(偶数)一前(奇数)重排数据的目的。根据算法中的第4条,可知在i向后移、i向前移过程中,当i=j时则停止这种移动(故While循环的条件表达式为i<j)。将先前暂存的数(temp)放到当前空缺位置,以实现算法中的第5条。8、数列:1,1,2,3,5,8,3,21,…的规律是从第3个数开始,每个数是它前面两个数之和。在考生文件夹下有一个工程文件vbsj5.vbp(相应的窗体文件为vbsj5.frm)。窗体Form1中已经给出了所有控件。编写适当的事件过程完成以下功能:选中一个单选按钮后,单击“计算”按钮,则计算出上述数列的第n项的值(n是选中的单选按钮后面的数值),并显示在文本框中,如图1-343所示(提示:因计算结果较大,应使用Long型变量)。注意:不能修改已经给出的程序和已有的控件的属性;在结束程序运行之前,必须选中一个单选按钮,并单击“计算”按钮获得一个结果;必须使用窗体右上角的“关闭”按钮结束程序,否则无成绩。最后把修改后的文件按原文件名存盘。程序源码:PrivateSubForm_Unload(CancelAsInteger)unload_subEndSubSubunload_sub()Open"out5.dat"ForOutputAs#1Print#1,Form1.optNum(0).Value,_Form1.optNum(1).Value,Form1._optNum(2).Value,Val(Form1._txtResult.Text)Close#1EndSub标准答案:【操作步骤】步骤1:打开考生文件夹下的本题工程文件vbsj5.vbp。步骤2:在代码编辑窗口中的通用部分,输入如下代码:OptionBase1步骤3:编写“计算”按钮的单击事件过程。参考代码:PrivateSubcmdCal_Click()Dima()AsLongDimiAsIntegerDimnAsIntegerFori=0TooptNum.Count-1IfoptNum(i).Value=TrueThenn=Val(optNum(i).Caption)ExitForEndIfNextReDima(n)a(1)=1a(2)=1Fori=3Tona(i)=a(i-1)+a(i-2)NexttxtResult.Text=a(n)EndSub步骤4:运行程序,选中一个单选按钮,并单击“计算”按钮获得一个结果,然后使用窗体右上角的“关闭”按钮结束程序。步骤5:按要求将文件保存至考生文件夹中。知识点解析:暂无解析9、在考生文件夹中有一个工程文件sjt5.vbp,如图2-48所示。运行程序时,从文件中读入矩阵数据并放入二维数组a中。单击”计算”按钮时,将统计矩阵两个对角线的元素中能被3整除的个数,统计结果显示在标签lblFirst中;同时计算矩阵主对角线的元素之和,计算结果显示在标签lblSecond中。已给出了部分程序,请编写”计算”命令按钮事件过程中的部分程序代码,以便完成上述功能。注意:不能修改程序的其他部分和控件属性。最后把修改后的文件按原文件名存盘。程序调试通过后,必须执行程序,并用”计算”按钮进行计算,否则无成绩。标准答案:步骤1:打开考生文件夹下的本题工程文件sjt5.vbp,在代码编辑窗口的指定位置编写以下代码:参考代码:Fork=1ToNSum=Sum+a(k,k)Ifa(k,k)/3=Int(a(k,k)/3)ThenCounter=Counter+1EndIfIfk<>N-k+1TnenIfa(k,N-k+1)/3=Int(a(k,N-k+1)/3)ThenCounter=Counter+1EndIfEndIfNextlblSecond.Caption=SumlblFirst.Caption=Counter步骤2:按<F5>键运行程序,然后单击”计算”按钮。步骤3:按要求将文件保存至考生文件夹中。知识点解析:暂无解析10、在考生文件夹下有一个工程文件sjt5.vbp,窗体上有两个图片框,名称为P1、P2,分别用来表示信号灯和汽车,如图3-182所示,其中在P1中轮流装入“黄灯.ico”、“红灯.ico”、“绿灯.ico”文件来实现信号灯的切换;还有两个计时器Timer1和Timer2,Timer1用于变换信号灯,黄灯1秒,红灯2秒,绿灯3秒;Timer2用于控制汽车向左移动。运行时,信号灯不断变换,单击“开车”按钮后。汽车开始移动,如果移动到信号灯前或信号灯下,遇到红灯或黄灯,则停止移动,当变为绿灯后再继续移动。在窗体中已经给出了全部控件和程序,但程序不完整,要求阅读程序并去掉程序中的注释符,把程序中的?改为正确的内容,使其实现上述功能,但不能修改程序中的其他部分,也不能修改控件的属性。最后把修改后的文件以原文件名存盘。标准答案:审题分析计时器只在设计时可见,计时器是否启用由其Enabled属性设置,值可取True或False。启用后由Interval属性设置间隔多长时间触发一次其Timer事件,Interval属性的单位为毫秒,默认值为0,此时计时器不启用。根据程序已提供源代码可知,Timer1用于控制红绿灯变换:第1秒亮黄灯,第2、3秒亮红灯,第4、5、6秒亮绿灯。变量a记录了信号灯运行的秒数,每触发一次Timer1的Timer事件,a就加1,当信号灯每亮完一轮,变量a又从第1秒开始计时。Timer2用于控制汽车行驶,每触发一次Timer2的Timer事件,汽车向左移动10。在汽车行经红绿灯下方(即P2.Left>P1.LeftAndP2.Left<P1.Left+P1.Width)时,遇黄灯或红灯亮(即a<4)时停车(通过设置Timer2.Enabled=False实现),否则继续行进。当汽车行至距窗体100时,也设置Timer2.Enabled=False停车。布尔型变量b用于记录是否已单击“开车”按钮,若是b=True,在亮起绿灯时及时启动Timer2。操作步骤步骤1:打开考生文件夹中的本题工程文件sjt5.vbp。步骤2:打开代码编辑窗口,去掉程序中的注释符“′”,将问号“?”改为正确的内容。参考代码:Timer2.Enabled=TrueP1.Picture=LoadPicture("绿灯.ico")Timer2.Enabled=FalseP2.MoveForm1.P2.Left-10,P2.Top,P2.Width,P2.Height步骤3:按要求将文件保存至考生文件夹中。考点链接图形控件、计时器。知识点解析:暂无解析国家二级VB机试(综合应用题)模拟试卷第3套一、综合应用题(本题共10题,每题1.0分,共10分。)1、在考生文件夹下有一个工程文件sjt5.vbp,其名称为Form1的窗体上已有三个文本框Text1、Text2、Text3,以及部分程序代码,请完成以下工作。①在属性窗扣中修改Text3的适当属性,使其在运行时不显示,作为模拟的剪贴板使用,窗体如图所示。②建立下拉式菜单,如下表所示。③窗体文件中给出了所有事什过程,但不完整,请去掉程序中的注释符,把程序中的?改为正确的内容,以便实现如下功能:当光标所在的文件框中无内容时,“剪切”、“复制”不可用,否则可以把该文本框中的内容剪切或复制到Text3中;若Text3中无内容,则“粘贴”不能用,否则可以把Text3中的内容粘贴在光标所在的文本框中的内容之后。注意:不能修改程序中的其他部分,各菜单项的标题名称必须正确。最后将修改后的文件按原文件名存盘。标准答案:【操作步骤】步骤1:打开本题工程文件,将Text3的Visible属性设置为False,然后按照题目要求建立菜单并设置其属性,如图3.20所示。菜单属性如表3.12所示。步骤2:打开代码编辑窗口,去掉程序中的注释符“’”,将问号改为正确的内容。参考答案DimwhichAsIntegerPrivateSubcopy_Click()’复制按钮Ifwhich=1Then’当焦点在Text1中,将rext1中的内容复制给Text3Text3.Text=Text1.TeXtElseIfwhich=2Then’同理,焦点在Text2中,将Text2中的内容复制给Text3Text3.Text=Text2.TextEndIfEndSubPrivateSubcutC1ick()’剪切按钮Ifwhich=1Then’当焦点在Text1中,则将内容复制给Text3,并清空Text1内容Text3.Text=Text1.TextTextl.Text=""ElseIfwhich=2Then’同上Text3.Text=Text2.TextText2.Text=""EndIfEndSUbPrivateSubedit_C1ick()’编辑Ifwhich=1ThenIfText1.Text=""ThenCut.Enabled=FalseCopy.Enabled=FalseElseCut.Enabled=TrueCopy.Enabled=TrueEndIfElseIfwhich=2ThenIfText2.Text=""ThenCut.Enabled=FalseCopy.Enabled=FalseE1seCut.Enabled=TrueCopy.Enabled=TrueEndIfEndIfIfText3.Text=""ThenPaste.Enabled=FalseE1sePaste.Enabled=TrueEndIfEndSubPrivateSubpaste_Cick()’粘贴按钮Ifwhich=1Then’当焦点在Text1中则将Text3的内容追加到Text1文件末尾Text1.Text=Text1.Text+Text3.TextElseIfwhich=2Then。’同上Text2.Text=Text2.Text+Text3.TextEndIfEndSubPrivateSubText1GotFocus()’本过程的作用是当焦点在Text1中时,which=1which=1EndSubPrivateSubText2GotFocus()’本过程的作用是当焦点在Text2中时,which=2which=2EndSub步骤3:调试并运行程序,关闭程序后按题目要求存盘。知识点解析:暂无解析2、在考生文件夹下有一个数据库文件“samp3.accdb”,其中存在已经设计好的表对象“tEmployee”和查询对象“qEmployee”,同时还设计出以“qEmployee”为数据源的报表对象“rEmployee”。请在此基础上按照以下要求补充报表设计。(1)在报表的报表页眉节区中添加一个标签控件,标题为“职工基本信息表”,并命名为“bTitle”。(2)将报表主体节区中名为“tDate”的文本框显示内容设置为“聘用时间”字段值。(3)在报表的页面页脚节区添加一个计算控件,以输出页码。计算控件放置在距上边0.25厘米、距左侧14厘米的位置,并命名为“tPage”。规定页码显示格式为“当前页/总页数”,如1/20、2/20、…、20/20等。注意:不能修改数据库中的表对象“tEmployee”和查询对象“qEmployee”;不能修改报表对象“rEmployee”中未涉及的控件和属性。标准答案:(1)【操作步骤】步骤1:选择“报表”对象,右键单击“rEmployee”,从弹出的快捷菜单中选择“设计视图”命令。步骤2:选择“报表设计工具”的“设计”选项卡“控件”组中的“标签”控件,单击报表页眉处,然后输入“职工基本信息表”,单击窗体任一点,如图3.245所示。步骤3:右键单击“职工基本信息表”标签,从弹出的快捷菜单中选择“属性”命令,在“名称”行输入“bTitle”,如图3.246所示。(2)【操作步骤】步骤1:右键单击报表主体节区任一点,从弹出的快捷菜单中选择“属性”命令,在“名称”行下拉列表中选择“tDate”。步骤2:在“控件来源”行下拉列表中选择“聘用时间”,如图3.247所示。(3)【操作步骤】步骤1:选择“设计”选项卡控件”组中的“文本框”控件,单击报表页面页脚节区仟一点,出现“Text”和“未绑定”两个文本框,选中“Text”文本框,按Del键将“Text”文本框删除。步骤2:右键单击“未绑定”文本框,从弹出的快捷菜单中选择“属性”命令,弹出属性对话框。选择“全部”选项卡,在“名称”行输入“tPage”,分别在“上边距”和“左”行输入“0.25cm”和“14cm”。在“控件来源”行输入“=[Page]&"/"&[PagesJ”,如图3.248所示。关闭属性表。步骤3:按Ctrl+S保存修改。关闭没计视图。知识点解析:暂无解析3、在考生文件夹中有一个工程文件vbsj5.vbp(相应的窗体文件为vbsj5.frm)。窗体Form1上有两个名称为Lab1和Lab2的标签,它们的标题分别为“密码”和“允许次数”;一个名称为Cmd1的命令按钮,其标题为“确定”;两个名称分别为Txt1和Txt2的文本框。其中Txt1用来输入密码(输入时显示“*”),无初始内容,Txt2的初始内容为3。已给出了Cmd1的事件过程,但不完整,要求去掉程序中的注释符“’”,把程序中的问号“?”改为正确内容,使得在运行时,在Txt1中输入密码后,单击“确定”按钮,如果输入的是“123456”,则在Txt1中显示“密码正确”如图3-66所示;如果输入其他内容,单击“确定”后,弹出如图3-67所示的错误提示对话框,并且Txt2中的数字减1。最多可输入3次密码,若3次输入错误,则禁止再次输入。标准答案:【操作步骤】步骤1:打开考生文件夹中的本题工程文件vbsj5.vbp,将文本框Txt1的PasswordChar属性值设置为“*”。步骤2:在代码编辑窗口,去掉程序中的注释符“’”,将问号“?”改为正确的内容。参考代码:IfTxt1.Text="123456"ThenTxt1.PasswordChar=""IfTxt2.Text>0ThenTxt1.Enabled=False步骤3:按要求将文件保存至考生文件夹中。知识点解析:暂无解析4、在考生目录下有一个工程文件sjt5.vbp。窗体中已经给出了所有控件(如图3-116所示)。请编写适当的事件过程完成以下功能:单击“读数”按钮,则把考生目录下的in5.txt文件中的一个整数放入Text1;单击“计算”按钮,则计算出大于该数的第一个素数,并显示在Text2中:单击“存盘”按钮,则把找到的素数存到考生目录下的out5.txt文件中。注意:在结束程序运行之前,必须单击“存盘”按钮,把结果存入out5.txt文件,否则无成绩。最后把修改后的文件按原文件名存盘。标准答案:【操作步骤】步骤1:打开本题对应工程文件sjt5.vbp。步骤2:双击窗体Form1上的“计算”按钮,打开代码编辑窗口,在其Click事件过程中输入如下代码。参考代码:PrivateSubCommand2_Click()a%=CInt(Text1.Text)Doa%=a%+1LoopUntilisprime(a%)Text2.Text=a%EndSub步骤3:编写判断素数的函数过程isprime,参考代码为:Functionisprime(aAsInteger)DimflagAsBooleank%=2flag=TrueWhilek%<=Int(a/2)AndflagIfa/k%=Int(a/k%)Thenflag=FalseEndIfk%=k%++1Wendisprime=flagEndFunction步骤4:按<F5>键运行程序,先单击“读数”按钮,接着单击“计算”按钮,最后单击“存盘”按钮。步骤5:按要求将文件保存至考生文件夹中。知识点解析:暂无解析5、在考生目录下有一个工程文件sjt5.vbp,其窗体上有两个标签L1和L2,标题分别为“口令”和“允许次数”;一个命令按钮C1,标题为“确定”;两个文本框名称分别为Text1和Text2。其中Text1用来输入口令(输入时,显示“*”),无初始内容;Text2的初始内容为3。并给出了C1的事件过程,但不完整,要求去掉程序中的注释符,把程序中的“?”改为正确的内容,使得在运行时,在Text1中输入口令后,单击“确定”按钮,如果输入的是“123456”,则在Text1中显示“口令正确”;如果输入其他内容,单击“确定”按钮后,弹出如图3—151所示的错误提示对话框,并且Text2中的数字减1。最多可输入3次口令,若3次都输入错误,则禁止再次输入。注意:不能修改程序中的其他部分。最后把修改后的文件按原文件名存盘。标准答案:步骤1:打开考生文件夹中的本题工程文件sjt5.vbp,将文本框Text1的PasswordChar属性值设置为“*”。步骤2:在代码编辑窗口,去掉程序中的注释符“’”,将问号“?”改为正确的内容。参考代码:IfText1.Text="123456"ThenText1.PaSswordChar=""IfText2.Text>0ThenText1.Enabled=FalSe步骤3:按要求将文件保存至考生文件夹中。知识点解析:根据题目源程序,判断文本框Text1输入的密码是否为“123456”的条件表达式为:Text1.Text="123456";要去掉对文本框中输入内容的屏蔽,需将其PasswordChar属性值清空,即执行语句:Text1.PasswordChar="";每输入一次错误密码,文本框Text2中的数字减1。当文本框Text2中数值还大于0时,提示重新输入,否则提示错误,并禁用文本框Text1。6、数列1,1,2,3,5,8,13,21,…的规律是从第三个数开始,每个数是它前面两个数之和。在考生目录下有一个工程文件sjt5.vbp。窗体中已经给出了所有控件,如图3-121所示。请编写适当的事件过程实现以下功能:在Text1中输入整数40,单击“计算”按钮,则在Text2中显示该数列第40项的值;如果单击“存盘”按钮,则将计算的第40项的值存到考生目录下的out5.txt文件中。(提示:因数据较大,应使用Long型变量。)注意:在结束程序运行之前必须单击“存盘”按钮,把结果存入out5.txt文件,否则无成绩。最后把修改后的文件按原文件名存盘。标准答案:【操作步骤】步骤1:打开考生文件夹下的工程文件sjt5.vbp。步骤2:编写“计算”按钮的单击事件过程。参考代码:PrivateSubCommand1Click()Dimf1,f2,fAsLongDima(40)AsLongf1=1:f2=1a(1)=f1:a(2)=f2Fori=3ToVal(Text1.Text)f=f1+f2a(i)=f:f1=f2:f2=fNextText2.Text=a(40)EndSub步骤3:运行程序,在文本框中输入40,并单击“计算”按钮获得一个结果,然后单击“存盘”按钮保存计算结果。步骤4:按要求将文件保存至考生文件夹中。知识点解析:暂无解析7、在考生文件夹下有一个工程文件sjt5.vbp。程序运行时,单击“显示数据”按钮,则将考生文件夹下in5.dat文件的内容读入一维数组a中,并按下标顺序将数组a各元素的值显示在List1列表框中;单击“移动”按钮,则将数组a中的最大值移动到数组的最前面,其他数据的排列顺序不变,并将移动后的结果显示在List2列表框中。单击“保存”按钮。则保存移动后的结果。要求:“显示数据”和“保存”按钮的Click事件过程已经给出,请编写“移动”按钮的Click事件过程实现上述功能。程序窗体界面如图所示。注意:考生不得修改窗体文件中已经存在的控件和程序,在结束程序运行之前必须单击“移动”按钮,并单击“保存”按钮保存结果,否则无成绩。最后程序按原文件名存盘。标准答案:[操作步骤]步骤1:打开本题工程文件。步骤2:打开代码编辑窗口,去掉程序中的注释符“’”,将问号改为正确的内容。参考代码(画下划线部分是需填入的内容)Dimi,max,maxindexAsIntegermax=a(1)Fori=2ToUBound(a)Ifa(i)>maxThenmax=a(i)maxindex=iEndIfNextiList2.AddItem(a(maxindex))Fori<>maxindexThenList2.AddItem(a(i))EndIfNexti步骤3:调试并运行程序,关闭程序后按题目要求存盘。知识点解析:暂无解析8、在考生文件夹下有一个工程文件sjt5.vbp,在该工程文件中已经定义了一个学生记录类型数据StudType。(1)在考生文件夹下有一个工程文件sjt3.vbp,其功有三个标题分别为“学号”、“姓名”和“平均分”的标签;三个初始内容为空,用于接收学号、姓名和平均分的文本框Text1、Text2和Text3;一个用于显示排序结果的图片框。还有两个标题分别为“添加”和“排序”的命令按钮,如图1-10所示。程序功能如下:①在Text1、Text2和Text3三个文本框中输入学号、姓名和平均分后,单击“添加”按钮,则将输入内容存入自定义的学生记录类型数组stud中(注:最多只能输入10个学生信息,且学号不能为空);②单击“排序”按钮,则将学生记录类型数组stud中存放的学生信息,按平均分降序排列的方式显示在图片框中,每个学生一行,且显示三项信息。请将“添加”按钮、“排序”按钮的Click事件过程中的注释符去掉,把?改为正确的内容,以实现上述程序功能。注意:考生不得修改窗体文件中已经存在的控件和程序,最后把修改后的文件按原文件名存盘。标准答案:【操作步骤】步骤1:打开考生文件下的本题工程文件在代码编辑窗口,去掉程序中的注释符“’”,将问号“?”改为正确的内容。参考代码:n=n–1stud(n).Num=Text1Fork=j+1TonIfstud(k).Average>stud(j).AverageThenstud(k)=stud(j)步骤2:按要求将文件保存至考生文件夹中。知识点解析:暂无解析9、在考生文件夹下有一个工程文件vbsj5.vbp,其功能是:①单击“读数”按钮,则把考生文件夹下in5.dat文件中的100个0~999之间的整数读入数组a中;②单击“计算”按钮,则对这100个数中的水仙花数(当一个数的值等于该数中各位数字的立方和时,此数被称为水仙花数。如153=13+53+33,所以153就是一个水仙花数)求平均值,并对该平均值截尾取整后显示在文本框txtResult中。窗体中给出了所有控件(如图1-241所示)以及“读数”按钮的Click事件过程,请为“计算”按钮编写适当的事件过程实现上述功能。注意:不得修改已经给出的程序和已有的控件的属性,在结束程序运行之前,必须进行计算,且必须使用窗体右上角的“关闭”按钮结束程序,否则无成绩。最后把修改后的文件按原文件名存盘。程序源码:Dima(100)AsIntegerPrivateSubcmdRead_Click()DimkAsIntegerOpenApp.Path&"\in5.dat"For_InputAs#1Fork=1To100Input#1,a(k)NextkClose#1EndSubPrivateSubcmdCal_Click()’考生应完成的程序EndSubPrivateSubForm_Unload(CancelAsInteger)OpenApp.Path&"\out5.dat"For_OutputAs#1Print#1,txtResult.TextClose#1EndSub标准答案:【操作步骤】步骤1:打开考生文件中的本题工程文件vbsj5.vbp,在代码编辑窗口指定位置编写以下代码:参考代码:DimsumAsIntegerDimnAsIntegerDimxAsIntegerDimyAsIntegerDimzAsIntegerFori=1To100x=Int(a(i)/100)y=Int((a(i)-x*100)/10)z=a(i)-x*100-y*10Ifa(i)=x^3+y^3+z^3Thensum=sum+a(i)n=n+1EndIfNexttxtResult.Text=Int(sum/n)步骤2:按要求将文件保存至考生文件夹中。步骤3:按<F5>运行程序,先单击“读数”按钮,接着单击“计算”按钮,然后单击窗体右上角的关闭按钮结束程序。知识点解析:暂无解析10、在考生目录下有一个工程文件sjt5.vbp。其功能是产生并显示一个数列的前n项。数列产生的规律是:数列的前2项是小于10的正整数,将此2数相乘,若乘积<10,则以此乘积作为数列的第3项;若乘积≥10,则以乘积的十位数为数列的第3项,以乘积的个位数为数列的第4项。再用数列的最后2项相乘,用上述规则形成后面的项,直至产生了第n项。窗体上部从左到右三个文本框的名称分别为:Text1、Text2、Text3,窗体下部的文本框名称为Text4。程序运行时,在Text1、Text2中输入数列的前两项,Text3中输入要产生的项数n,单击“计算”按钮则产生此数列的前n项,并显示在Text4中。如图3-177所示。注意:文件中已经给出了全部控件,但程序不完整,请去掉程序中的注释符,把程序中的?改为正确的内容。不得修改原有程序和控件的属性。最后把修改后的文件按原文件名存盘。标准答案:审题分析根据题意,数列第n项的值源于该项前两项的乘积。本题源程序中,将文本框Text1的输入值赋予变量a作初值,将文本框Text2的输入值赋予变量b作初值,并把a、b初值作为数列的前两项。故第一个?处应改为:b。将文本框Text3的输入值赋予变量n,以标记数列最终要生成的项数。变量k用于记录数列当前项数,初值为2。在Do循环中,首先将a、b的乘积赋予变量c(当前项数k增1),然后判断c的值是否小于10,若c小于10则c即为数列的第3项,并将b的值赋予变量a,c的值赋予变量b,以便计算数列下一项的值;若c不小于10,则取a和b乘积十位上的数(即d=c\10)作数列的第3项,将d的值赋予变量a(当前项数k增1),并进一步判断当前k值是否小于或等于最终要生成的项数n,若是则取a和b乘积个位上的数(即d=cMod10)作数列的第4项,将d的值赋予变量b,以便计算数列下一项的值。重复执行循环体,即可依次求出数列后续项的值。操作步骤步骤1:打开考生文件夹中的本题工程文件sjt5.vbp,在代码编辑窗口,去掉程序中的注释符“′”,将问号“?”改为正确的内容。参考代码:Text4=Text4&a&""&ba=bIfk<=nThenb=d步骤2:按要求将文件保存至考生文件夹中。考点链接Do循环和While循环。知识点解析:暂无解析国家二级VB机试(综合应
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年广东省建筑安全员-C证考试(专职安全员)题库及答案
- 2025贵州省建筑安全员-C证考试(专职安全员)题库附答案
- 2025山东省安全员知识题库及答案
- 2025河南省安全员-C证(专职安全员)考试题库
- 食品加工的原料和材料-课件
- 中医内科学-感冒
- 《教师节综合实践》课件
- 有机药化实验课件
- 《急腹症宝力道》课件
- 《运筹学》整数规划
- 《上海理工大学》课件
- 中职班主任培训
- 2024-2030年中国触摸显示器商业计划书
- 三只松鼠深度分析报告
- 公共关系理论与实务教程 课件 项目九-公共关系危机管理
- 大创赛项目书
- 2024年江苏省学业水平合格性考试全真模拟语文试题(解析版)
- 独家投放充电宝协议书范文范本
- 第六章 绿色化学与科技课件
- 小学三年级下册数学(青岛54制)全册知识点总结
- 汽车修理业务受理程序、服务承诺、用户抱怨制度
评论
0/150
提交评论