2026年计算机二级VB模拟试题及答案_第1页
2026年计算机二级VB模拟试题及答案_第2页
2026年计算机二级VB模拟试题及答案_第3页
2026年计算机二级VB模拟试题及答案_第4页
2026年计算机二级VB模拟试题及答案_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

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

文档简介

2026年计算机二级VB模拟试题及答案一、单项选择题(每题1分,共20分)1.在VisualBasic集成开发环境中,用于激活属性窗口的功能键是()。A.F1B.F2C.F4D.F5答案:C2.下列选项中,不属于VisualBasic三种工作模式的是()。A.设计模式B.运行模式C.中断模式D.编译模式答案:D3.下列VisualBasic变量名中,合法的是()。A.3ABCB.A-3C.ABC_3D.Integer答案:C4.表达式5^2Mod25\2^2的值是()。A.1B.0C.2D.4答案:A5.设有如下变量声明:DimXAsInteger,如果Sgn(X)的值为-1,则X的值是()。A.正整数B.负整数C.零D.任意整数答案:B6.在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程:PrivateSubCommand1_Click()a$="VisualBasic"PrintString(3,a$)EndSub程序运行后,单击命令按钮,在窗体上显示的内容是()。A.VVVB.VisC.VD.出错答案:A7.以下关于函数过程和子过程叙述中,正确的是()。A.函数过程必须有返回值,子过程没有B.子过程必须有返回值,函数过程没有C.函数过程和子过程都可以通过过程名返回值D.函数过程和子过程都必须通过形参返回值答案:A8.执行语句Open"C:\Data.txt"ForOutputAs#1后,对文件Data.txt能够执行的操作是()。A.只能写,不能读B.只能读,不能写C.既可以读,也可以写D.既不能读,也不能写答案:A9.以下关于控件数组的叙述中,错误的是()。A.控件数组由一组具有相同名称和类型的控件组成B.控件数组中的每个元素具有唯一的索引(Index)C.控件数组中的元素共享相同的事件过程D.运行时,可以创建新的控件数组元素答案:D10.在窗体上画一个名称为Text1的文本框,然后编写如下事件过程:PrivateSubForm_Load()Text1.Text=""Text1.SetFocusFori=1To5Sum=Sum+iNextiText1.Text=SumEndSub程序运行后的结果是()。A.在文本框中显示15B.在文本框中显示0C.出错D.文本框中为空白答案:C11.以下叙述中,错误的是()。A.一个工程中可以包含多个窗体文件B.在一个窗体文件中用Private定义的通用过程能被其他窗体调用C.全局变量必须在标准模块中定义D.在设计VB程序时,窗体、标准模块、类模块等需要分别保存为不同类型的磁盘文件答案:B12.以下关于菜单的叙述中,错误的是()。A.每个菜单项都是一个控件,具有属性和事件B.除了Click事件之外,菜单项还能响应其他如DblClick等事件C.菜单项的快捷键不能任意设置D.在程序运行过程中,可以通过代码改变菜单项的可见性答案:B13.设a=3,b=5,则以下表达式值为真的是()。A.a>=bAndb>10B.(a>b)Or(b>0)C.(a<0)Eqv(b>0)D.(-3+5>a)And(b>0)答案:B14.在窗体上画一个名称为List1的列表框,一个名称为Label1的标签,列表框中显示若干城市的名称。当单击列表框中的某个城市名时,在标签中显示选中城市的名称。下列能正确实现上述功能的程序是()。A.PrivateSubList1_Click()Label1.Caption=List1.ListIndexEndSubB.PrivateSubList1_Click()Label1.Name=List1.TextEndSubC.PrivateSubList1_Click()Label1.Name=List1.List(List1.ListIndex)EndSubD.PrivateSubList1_Click()Label1.Caption=List1.TextEndSub答案:D15.以下关于图片框(PictureBox)和图像框(Image)的叙述中,正确的是()。A.图片框可以作为容器控件,而图像框不能B.图像框的Stretch属性用来自动调整图形大小以适应图像框C.图片框可以通过Print方法显示文本,而图像框不能D.以上说法都正确答案:D16.以下叙述中,错误的是()。A.用Shell函数可以调用能够在Windows下运行的应用程序B.调用Shell函数的格式应为:<变量名>=Shell(……)C.用Shell函数可以调用可执行文件,也可以调用VisualBasic的内部函数D.用Shell函数不能执行DOS命令答案:C17.在窗体上画一个名称为Timer1的计时器控件,要求每隔0.5秒发生一次计时器事件,则以下正确的属性设置语句是()。A.Timer1.Interval=0.5B.Timer1.Interval=5C.Timer1.Interval=50D.Timer1.Interval=500答案:D18.假定在窗体(名称为Form1)的代码窗口中定义如下记录类型:PrivateTypeanimalanimalNameAsString20animalNameAsString20aColorAsString10aColorAsString10EndType在窗体上画一个名称为Command1的命令按钮,然后编写如下事件过程:PrivateSubCommand1_Click()DimrecAsanimalOpen"c:\vbTest.dat"ForRandomAs#1Len=Len(rec)rec.animalName="Cat"rec.aColor="White"Put#1,,recClose#1EndSub则以下叙述中正确的是()。A.记录类型animal不能在Form1中定义,必须在标准模块中定义B.如果文件c:\vbTest.dat不存在,则Open命令执行失败C.由于Put语句中没有指明记录号,因此每次都把记录写到文件的末尾D.语句“Put#1,,rec”将rec变量的内容写入文件号为1的文件中答案:D19.在窗体上画一个名称为Drive1的驱动器列表框,一个名称为Dir1的目录列表框,一个名称为File1的文件列表框,两个名称为Label1、Label2的标签,标题分别为空白和“文件名”。要求程序运行后,驱动器列表框Drive1中的驱动器发生改变时,目录列表框Dir1中的内容随之改变;目录列表框Dir1中的目录发生改变时,文件列表框File1中的内容随之改变;单击文件列表框File1中的某个文件名时,在Label1中显示该文件的完整路径。以下可以实现上述功能的事件过程是()。A.PrivateSubDir1_Change()File1.Path=Dir1.PathEndSubPrivateSubDrive1_Change()Dir1.Path=Drive1.DriveEndSubPrivateSubFile1_Click()Label1.Caption=File1.Path+"\"+File1.FileNameEndSubB.PrivateSubDir1_Change()File1.Path=Dir1.PathEndSubPrivateSubDrive1_Change()Dir1.Path=Drive1.DriveEndSubPrivateSubFile1_Click()Label1.Caption=File1.FileNameEndSubC.PrivateSubDir1_Change()File1.Path=Dir1.PathEndSubPrivateSubDrive1_Change()Dir1.Path=Drive1.PathEndSubPrivateSubFile1_Click()Label1.Caption=File1.Path+"\"+File1.FileNameEndSubD.PrivateSubDir1_Change()File1.Path=Dir1.PathEndSubPrivateSubDrive1_Change()Dir1.Path=Drive1.PathEndSubPrivateSubFile1_Click()Label1.Caption=File1.FileNameEndSub答案:A20.以下关于过程及过程参数的描述中,错误的是()。A.过程的参数可以是控件名称B.用数组作为过程的参数时,使用的是“传地址”方式C.只有函数过程能够将过程中处理的信息传回到调用的程序中D.窗体可以作为过程的参数答案:C二、多项选择题(每题2分,共10分,多选、少选、错选均不得分)1.下列可以作为VisualBasic变量名的是()。A.A#BB._123C.4ABCD.MyNameE.Const答案:B,D2.以下关于循环结构的叙述中,正确的是()。A.For循环的循环次数是确定的B.DoWhile...Loop循环可能一次也不执行循环体C.Do...LoopUntil循环至少执行一次循环体D.在For循环中,可以使用ExitDo语句退出循环E.在Do循环中,可以使用ExitFor语句退出循环答案:A,B,C3.下列控件中,具有Caption属性的是()。A.文本框(TextBox)B.标签(Label)C.框架(Frame)D.列表框(ListBox)E.复选框(CheckBox)答案:B,C,E4.以下关于数据文件的叙述中,正确的是()。A.顺序文件记录长度可以不同,随机文件记录长度必须相同B.对顺序文件进行操作时,只能按顺序读写记录C.对随机文件进行操作时,可以通过记录号直接访问任意一条记录D.无论是顺序文件还是随机文件,其打开的语句和读写语句都相同E.使用Append方式打开顺序文件时,文件指针被定位在文件末尾答案:A,B,C,E5.以下关于VisualBasic数组的叙述中,正确的是()。A.数组的下标下界默认为0,但可以使用OptionBase语句将其设为1B.二维数组中的各元素在内存中按行存储C.定义动态数组时,ReDim语句可以改变数组的维数和类型D.使用Erase语句可以释放动态数组所占用的内存E.使用Array函数可以给任何类型的数组变量进行初始化赋值答案:A,B,D三、填空题(每空2分,共20分)1.数学表达式sin²(α)+cos(β)的VisualBasic表达式为________。答案:Sin(alpha)^2+Cos(beta)2.在VisualBasic中,用于声明全局变量的关键字是________。答案:Public或Global3.执行下列程序段后,变量s的值是________。s=0Fori=1To10Step2s=s+iNexti答案:254.在窗体上有一个名称为Text1的文本框,其MultiLine属性为True。还有两个名称为Cmd1和Cmd2的命令按钮,标题分别为“读入”和“计算保存”。要求程序运行后,单击“读入”按钮,读入in.txt文件中的100个整数,放入一个数组中;单击“计算保存”按钮,计算数组中所有素数的和,并把结果保存在out.txt文件中。以下是实现此功能的不完整程序,请补充完整。Dimarr(1To100)AsIntegerPrivateSubCmd1_Click()DimjAsIntegerOpen"in.txt"ForInputAs#1Forj=1To100Input#1,arr(j)Text1.Text=Text1.Text&Str(arr(j))&""NextjClose#1EndSubPrivateSubCmd2_Click()DimsumAsInteger,jAsInteger,kAsInteger,flagAsIntegersum=0Forj=1To100flag=0Fork=2ToSqr(arr(j))Ifarr(j)Modk=0Thenflag=1ExitForEndIfNextkIf________Thensum=sum+arr(j)EndIfNextjOpen"out.txt"ForOutputAs#1Print#1,sumClose#1EndSub答案:flag=0Andarr(j)>15.以下程序的功能是:单击窗体时,在窗体上打印出当前窗体的高度和宽度。请填空。PrivateSubForm_Click()Print"窗体高度为";________;",宽度为";________EndSub答案:ScaleHeight或Height,ScaleWidth或Width6.设有如下程序:PrivateSubForm_Click()DimaAsInteger,bAsIntegera=20:b=50p1a,bp2a,bp3a,bPrint"a=";a;"b=";bEndSubSubp1(xAsInteger,ByValyAsInteger)x=x+10y=y+20EndSubSubp2(ByValxAsInteger,yAsInteger)x=x+10y=y+20EndSubSubp3(ByValxAsInteger,ByValyAsInteger)x=x+10y=y+20EndSub程序运行后,单击窗体,则在窗体上显示的内容是:a=________b=________。答案:30,907.在窗体上画一个名称为Text1的文本框,然后编写如下事件过程:PrivateSubText1_KeyPress(KeyAsciiAsInteger)DimchAsStringch=Chr(KeyAscii)KeyAscii=Asc(UCase(ch))IfKeyAscii=13ThenPrintText1.TextEndIfEndSub程序运行后,在文本框中输入“Hello”,然后按回车键,则在窗体上显示的内容是________。答案:HELLO四、程序改错题(找出错误行并改正,每题5分,共10分)1.以下程序的功能是:输入一个正整数n,计算并输出n!。程序中有两处错误,请找出并改正。PrivateSubCommand1_Click()DimnAsInteger,iAsInteger,sAsIntegern=Val(InputBox("请输入一个正整数:"))s=0Fori=1Tons=sis=siNextiPrintn&"!="&sEndSub错误1:第3行,s=0应改为s=1错误2:第5行,s=si应改为s=si(逻辑错误在于初始值,改正初始值后此行正确。或指出算法逻辑:若初始值s=0,则结果始终为0。所以主要错误在第3行。)错误2:第5行,s=si应改为s=si(逻辑错误在于初始值,改正初始值后此行正确。或指出算法逻辑:若初始值s=0,则结果始终为0。所以主要错误在第3行。)2.以下程序的功能是:单击命令按钮,将文本框Text1中选中的文本复制到文本框Text2中。程序有一处错误,请找出并改正。PrivateSubCommand1_Click()IfText1.SelLength>0ThenText2.Text=Text1.SelStartEndIfEndSub错误:第3行,Text2.Text=Text1.SelStart应改为Text2.Text=Text1.SelText五、程序填空题(根据程序功能描述,在横线处填入适当代码,每空3分,共15分)1.以下程序的功能是:生成20个50到100之间的随机整数,存入数组arr,并找出其中的最大值、最小值和平均值。请填空。PrivateSubCommand1_Click()Dimarr(1To20)AsIntegerDimiAsInteger,maxAsInteger,minAsInteger,sumAsInteger,averAsSingleRandomizeFori=1To20arr(i)=Int(Rnd________+50)arr(i)=Int(Rnd________+50)Printarr(i);NextiPrintmax=arr(1):min=arr(1):sum=arr(1)Fori=2To20Ifarr(i)>maxThenmax=arr(i)Ifarr(i)<minThenmin=arr(i)sum=________Nextiaver=sum/20Print"最大值:";max,"最小值:";min,"平均值:";averEndSub答案:51,sum+arr(i)2.以下程序的功能是:利用递归函数计算斐波那契数列的第n项(n>=1)。斐波那契数列:1,1,2,3,5,8,13,...,即从第三项开始,每一项等于前两项之和。请填空。PrivateFunctionfib(ByValnAsInteger)AsLongIfn=1Orn=2Thenfib=________Elsefib=________EndIfEndFunctionPrivateSubCommand1_Click()DimmAsIntegerm=Val(InputBox("请输入项数n(n>=1):"))Print"第"&m&"项是:";fib(m)EndSub答案:1,fib(n1)+fib(n2)3.在窗体上有一个名称为List1的列表框,一个名称为Text1的文本框,一个名称为Command1的命令按钮,标题为“添加”。要求程序运行后,在Text1中输入内容,单击“添加”按钮,则将Text1中的内容添加到列表框中,并清空Text1中的内容,同时使Text1获得焦点。如果Text1中没有内容,则用消息框提示“请输入内容!”。请填空完成Command1的Click事件过程。PrivateSubCommand1_Click()IfText1.Text=""ThenMsgBox"请输入内容!",vbExclamationElseList1.AddItem________Text1.Text=""EndIf________EndSub答案:Text1.Text,Text1.SetFocus六、编程题(第1题10分,第2题15分,共25分)1.编写一个函数过程,判断一个给定的三位整数是否为“水仙花数”。所谓“水仙花数”是指一个三位数,其各位数字的立方和等于该数本身。例如,153=1³+5³+3³,所以153是水仙花数。函数原型为:FunctionIsNarcissus(ByValnAsInteger)AsBoolean。如果n是水仙花数,则函数返回True,否则返回False。然后编写命令按钮的单击事件过程,调用该函数,找出所有的三位水仙花数并显示在窗体上。答案:FunctionIsNarcissus(ByValnAsInteger)AsBooleanDimaAsInteger,bAsInteger,cAsIntegera=n\100b=(n\10)Mod10c=nMod10Ifn=a^3+b^3+c^3ThenIsNarcissus=TrueElseIsNarcissus=FalseEndIfEndFunctionPrivateSubCommand1_Click()DimiAsIntegerPrint"所有的三位水仙花数有:"Fori=100To999IfIsNarcissus(i)ThenPrinti;EndIfNextiEndSub2.设计一个简单的学生成绩管理程序。窗体上包含以下控件:四个标签(Label1~Label4,标题分别为“学号:”、“姓名:”、“成绩:”、“显示区”);三个文本框(Text1~Text3,用于输入学号、姓名和成绩,Text3的MaxLength属性设为3);一个图片框(Picture1,用于显示信息);四个命令按钮(Command1~Command4,标题分别为“添加”、“最高分”、“平均分”、“清除”)。要求:(1)在标准模块中定义一个自定义数据类型Student,包含学号(stuNo,字符串)、姓名(stuName,字符串)、成绩(score,整型)三个字段。(2)在窗体模块中声明一个模块级的动态数组stu(),类型为Student,用于存储学生记录。(3)实现“添加”按钮功能:将文本框中学号、姓名和成绩内容作为一个新记录添加到数组stu中,并在图片框中显示“记录添加成功!”。添加前应检查成绩是否为0-100之间的整数,若不是,用消息框提示错误。添加后清空三个文本框,并将焦点置于Text1。(4)实现“最高分”按钮功能:在图片框中显示成绩最高的学生信息(可能有多人)。(5)实现“平均分”按钮功能:在图片框中显示所有学生的平均成绩(保留一位小数)。(6)实现“清除”按钮功能:清除图片框中的所有显示内容。请根据以上要求,编写完整的事件过程代码。答案:(在标准模块Module1中)PublicTypeStudentstuNoAsString10stuNoAsString10stuNameAsString8stuNameAsString8scoreAsIntegerEndType(在窗体模块中)Dimstu()AsStudentDimcountAsInteger'记录当前学生人数PrivateSubForm_Load()count=0ReDimstu(1To10)AsStudent'初始分配空间EndSubPrivateSubCommand1_Click()'添加DimsAsStudentIfText1.Text=""OrText2.Text=""OrText3.Text=""ThenMsgBox"请填写完整信息!",vbExclamationExitSubEndIfs.stuNo=Text1.Texts.stuName=Text2.TextIfNotIsNumeric(Text3.Text)ThenMsgBox"成绩必须为数字!",vbExclamationText3.SetFocusText3.SelStart=0Text3.SelLength=Len(Text3.Text)ExitSubEndIfs.score=Val(Text3.Text)Ifs.score<0Ors.score>100ThenMsgBox"成绩必须在0-100之间!",vbExcl

温馨提示

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

评论

0/150

提交评论