您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 数据通信与网络 > 第33次VB笔试试卷第二部分VB程序设计
第33次VB笔试试卷第二部分VB程序设计一、单项选择题(1分/小题,共10分)1、语句PRINTSGN(-26)=;SGN(-26)的输出结果为(16).16(A)SGN(-26)=26(B)SGN(-26)=-26(C)SGN(-26)=+1(D)SGN(-26)=-12、VB应用程序保存在磁盘上,至少会有以(17)为扩展名两个文件.17(A).DOC和.TXT(B).COM和.EXE(C).VBW和.BAS(D).VBP和.FRM3、组合框有三种风格,它们由Style属性所决定,其中为下拉列表框时,Style属性值应为(18).18(A)0(B)1(C)2(D)34、Int(198.555*100+0.5)/100的值(19).19(A)198(B)199.6(C)198.56(D)2005、若要访问组合框Comb1中被用户选中的表项,应使用(20)20(A)Comb1.Text(B)Comb1.List(C)Comb1.ListIndex(D)Comb1.ListCount6、下列各项变量中,哪一项所占的内存空间最多(21).21(A)dimxascurrencyx=99(B)dimst1asstringst1='good'(C)dimst2asstringst2='goodbye'(D)dimdasdatad='1898/09/12'7、清除列表框的所有选项应选择下列哪种方法(22).22(A)Clear(B)Cls(C)ClearItem(D)RemoveItem8、如果在窗体上已经创建了一个文本框对象Text1,可以通过(23)事件获得输入键值的ASCII码.23(A)Change(B)LostFocus(C)KeyPress(D)GotFocus9、以下不属于VisualBasic系统的文件类型是(24).24(A).frm(B).bat(C).vbg(D).vbp10、控件是(25).25(A)建立对象的工具(B)设置对象属性的工具(C)编写程序的编辑器(D)建立图形界面的编辑窗口二、程序阅读(3分/题,共45分)1、在窗体上画一个名称为Label1、标题为VisualBasic考试的标签,两个名称分别为Command1和Command2、标题分别为开始和停止的命令按钮,然后画一个名称为Timer1的计时器控件,并把其Interval属性设置为500.编写如下程序:PrivateSubForm_Load()Timer1.Enabled=FalseEndSubPrivateSubCommand1_Click()Timer1.Enabled=TrueEndSubPrivateSubCommand2_Click()Timer1.Enabled=FalseEndSubPrivateSubTimer1_Timer()IfLabel1.LeftWidthThenLabel1.Left=Label1.Left+120ElseLabel1.Left=0EndIfEndSub(1)程序运行后,单击开始按钮,标签在窗体中移动.对于这个程序,以下叙述中错误的是(26)26(A)标签的移动方向为自左向右(B)单击停止按钮后再单击开始按钮,标签从停止的位置继续移动(C)当标签全部移出窗体后,将从窗体的另一端出现并重新移动(D)标签每隔1秒移动一次(2)程序使用了几个控件(27)27(A)1(B)2(C)3(D)4(3)Timer控件的Interval属性的单位是(28)28(A)秒(B)毫秒(C)微秒(D)纳秒2、程序如下Functionf(mAsInteger)AsIntegerb=1StaticcAsIntegerb=b+1c=c+1f=m*b*cEndFunctionPrivateSubCommand1_Click()DimaAsIntegera=2Sum=0Fori=1To3Sum=Sum+f(a)NextiPrintSumEndSub(1)程序运行后,窗体上显示的值为(29。29(A)24(B)12(C)28(D)32(2)如果将StaticcAsInteger改为dimcAsInteger,则sum的值为(30)。30(A)24(B)12(C)28(D)32(3)如果将语句b=1去掉,则sum的值又为(31)。31(A)24(B)12(C)28(D)323、程序如下DimxAsInteger,yAsInteger,zAsIntegerSubs1(aAsInteger,bAsInteger)DimcAsIntegera=2*ab=b+2c=a+bEndSubSubs2(aAsInteger,ByValbAsInteger)DimcAsIntegera=2*ab=b+2c=a+bEndSubPrivateSubCommand1_Click()x=4y=4z=6Calls1(x,y)Printx+y+z;Calls2(x,y)Printx+y+zEndSub(1)程序运行后,窗体上显示的结果为(32)。32(A)2428(B)2028(C)2018(D)2020(2)将ByValbAsInteger改为bAsInteger后窗体上显示的结果为(33)。33(A)2428(B)2028(C)2018(D)2030(3)修改后变量x和y的最后取值为(34).34(A)2428(B)2020(C)168(D)20304、程序如下PrivateSubForm_Click()DimnumAsInteger,dat1AsInteger,dat2AsIntegerDimswitAsBooleannum=0Fordat1=2To10Opend:\prime.datForOutputAs#1swit=TrueFordat2=2ToSqr(dat1)If(dat1Moddat2)=0Thenswit=FalseExitForEndIfNextdat2Nextdat1IfswitThennum=num+1Write#1,第;num;个数;dat1EndIfClose#1EndSub(1)程序中write语句的作用是(35).35(A)读数据(B)写数据(C)修改数据(D)追加数据(2)执行程序后,prime.dat文件的内容是(36)。36(A)第1个数7(B)第1个数2(C)第1个数2第2个数5第2个数3第2个数3第3个数9第3个数5第3个数5第4个数7(D)以上都不对(3)该程序的功能是(37)。37(A)统计2到10之间的数据个数。(B)统计2到10之间的素数个数。(C)找出2到10之间所有的素数。(D)找出2到10之间的第一个素数。5、程序如下Subs1(b()AsInteger)Fori=1To4b(i)=2*iNextiEndSubL1:PrivateSubCommand1_Click()Dima()AsIntegerRedima(1to4)Fori=1To4a(i)=i+5Nextis1a()Fori=1To4Printa(i);NextiEndSub(1)程序运行的结果是(38)。38(A)6789(B)12141618(C)2468(D)1234(2)程序中所定义的a()是(39)。39(A)用户自定义类型(B)静态数组(C)动态数组(D)用户自定义类型数组(3)在L1处添加语句optionbase1后,程序运行的结果(40)。40(A)有变化(B)无变化(C)出现语法错误(D)以上都不是三、程序填空(2分/空,30分)1、下面的程序段用于求矩阵相乘C=A×B,设A、B、C分别为m×p、p×n、m×n的矩阵。PrivateSubForm_Click()Constm=4,p=3,n=2Dima(1Tom,1Top)AsIntegerDimb(1Top,1Ton)AsIntegerDimc(1Tom,1Ton)AsIntegerDimiAsInteger,jAsInteger,kAsInteger,sumAsIntegerFori=1TomFork=1Topa(i,k)=iNextkNextiFori=1TopFork=1Tonb(i,k)=iNextkNextiFori=1TomForj=1Ton【①】Fork=1Topsum=sum+【②】Nextkc(i,j)=【③】Nextj,iPrint输出矩阵Fori=1TomFork=1TonPrintc(i,k),NextkPrintNextiEndSub2、以下程序段分别以子过程和函数来计算某级数部分和,级数公式如图1所示。Functionjishu1(x!,eps#)AsDoubleDimn%,s#,t#n=1:s=0:t=1DoWhile(Abs(t)=eps)s=s+tt=t*x/nn=n+1Loop【①】EndFunctionSubjishu2(s#,x!,eps#)Dimn%,t#n=1:s=0:t=1DoWhile(Abs(t)=eps)s=s+tt=t*x/nn=n+1LoopEndSubPrivateSubCommand1_Click()Dimf1#,f2#f1=jishu1(2#,0.000001)【②】jishu2(f2,2#,0.000001)Printf1=;f1,f2=;f2EndSub3、用输入对话框输入x,根据如图公式计算对应的y,在窗体上输出y的值。PrivateSubCommand1_Click()DimxAsSingle,【①】AsSinglex=Val(【②】(Pleaseinputx:,输入X的值))Ifx=10Then【③】ElseIfx10Theny=Sqr(x)【④】Elsey=2*x^3+6EndIfPrintyEndSub4、以下程序段实现的功能是:查找一数列中是否存在某数字x,若数列中存在该数字,则输出其出现的次数,否则输出不存在信息。PrivateFunctionSearch(a()AsInteger,ByValkey,n%)AsBooleanDimi%Search=FalseFori=LBound(a)To【①】Ifkey=a(i)ThenSearch=True【②】EndIfNextiEndFunctionPrivateSubForm_Click()DimxAsInteger,kAsInteger,numAsIntegerDimb()AsIntegernum=Int(Rnd*10)+1ReDimb(num)Fori=0Tonumb(i)=Int(Rnd*70)+20Printb(i);NextiPrintx=Val(InputBox(输入待查找数据))IfSearch(【③】,x,k)ThenPrintx;在数列中出现;k;次ElsePrintx;未在数列中出现EndIfEndSub5、在文本框内输入一串字符后,统计并显示各字母出现的次数不区分大小写字母。PrivateSubCommand1_Click()Dima(1To26)AsInteger,cAsString*1【①】=Len(Text1)ForI=1Tol1c=【②】(Mid(Text1,I,1))Ifc=aAndc=zThenj=Asc(c)-【③】+1a(j)=a(j)+1EndIfNextIPicture1.ClsForj=1To26Ifa(j)0ThenPicture1.Print;Chr(j+96);=;a(j);EndIfNextjEndSub
本文标题:第33次VB笔试试卷第二部分VB程序设计
链接地址:https://www.777doc.com/doc-2163436 .html