您好,欢迎访问三七文档
1第八章VB过程一、选择题1.下列叙述中不正确的是:A、VB中的函数功能类似于Sub过程B、Sub过程不可以递归C、子过程不返回与其特定子过程名相关联的值D、过程是没有返回值的函数,又常被称为Sub过程,在事件过程或其他子过程中可以按名称调用过程2.在过程定义中,Private表示:A、此过程可以被其他过程调用B、此过程不可以被任何其他过程调用C、此过程只可以被本工程中的其他过程调用D、此过程只可以被本窗体模块中的其他过程调用3.以下说法错误的是:A、函数过程没有返回值B、子过程没有返回值C、函数过程可以带参数D、子过程可以带参数4.下列哪条语句是错的_______。A、exitsubB、exitfunctionC、exitwhileD、exitdo5.以下关于过程及过程参数的描述中,错误的是:A、过程的参数可以是控件名称B、用数组作为过程的参数时,使用的是“传地址”方式C、只有函数过程能够将过程中处理的信息传回到调用的程序中D、窗体可以作为过程的参数6.不能脱离控件(包括客体)而独立存在的过程是:A、事件过程B、通用过程C、Sub过程D、函数过程7.在VisualBasic中传递参数的方法有_________方式。A、一种B、两种C、三种D、四种8.关键字声明的局部变量在整个程序运行中一直存在A、DimB、PublicC、StaticD、Private9.在VisualBasic应用程序中,以下正确的描述是:A、过程的定义可以嵌套,但过程的调用不能嵌套B、过程的定义不可以嵌套,但过程的调用可以嵌套C、过程的定义和过程的调用均可以嵌套D、过程的定义和过程的调用均不能嵌套210.在窗体中添加一个命令按钮(Name属性为Command1),然后编写如下代码:PrivateSubCommand1_Click()x=InputBox(请输入整数)a=f1(Val(x))PrintaEndSub运行程序后,如果单击命令按钮,则显示一个输入对话框,在该对话框中输入一个整数,并用这个整数作为实参调用函数过程f1。在f1中判断所输入的整数是否是奇数,如果是奇数,过程f1返回1,否则返回0。能够正确实现上述功能的代码是:A、Functionf1(ByRefbAsInteger)B、Functionf1(ByRefbAsInteger)IfbMod2=0ThenIfbMod2=0Thenreturn0f1=0ElseElsereturn1f1=1EndIfEndIfEndFunctionEndFunctionC、Functionf1(ByRefbAsInteger)D、f1(ByRefbAsInteger)IfbMod2=0ThenIfbMod2=0Thenf1=1return0ElseElsef1=0return1EndIfEndIfEndFunctionEndFunction11.在窗体中添加一个命令按钮,然后编写如下代码:Functionfunc(aAsInteger,bAsInteger)AsIntegerStaticmAsInteger,iAsIntegerm=0i=2i=i+m+1m=i+a+bfunc=mEndFunctionPrivateSubCommand1_Click()DimkAsInteger,mAsIntegerDimpAsInteger3k=4m=1p=func(k,m)Printp;p=func(k,m)PrintpEndSub程序运行后,单击命令按钮,输出结果为:A、817B、816C、820D、8812.Sub过程与Function过程最根本的区别是:A、Sub过程可以用Call语句直接使用过程名调用,而Function过程不可以B、Function过程可以有形参,Sub过程不可以C、Sub过程不能返回值,而Function过程能返回值D、两种过程参数的传递方式不同13.设有如下代码:PrivateSubForm_Load()ShowDimb()AsVariantb=Array(1,3,5,7,9,11,13,15)Callsearch(b)Fori=0To7Printb(i)NextiEndSub此程序的功能是通过过程调用,把数组中的元素按逆序存放。为实现此功能,缺少的过程的程序段是:A、PrivateSubsearch(dima()asVariant)DimTFori=LBound(a)ToUBound(a)T=a(i):a(i)=a(UBound(a)-i):a(UBound(a)-i)=TNextiEndSubB、PrivateSubsearch(dima()asVariant)DimTDimJAsIntegerJ=(LBound(a)+UBound(a))/2Fori=LBound(a)ToJ4T=a(i):a(i)=a(UBound(a)-i):a(UBound(a)-i)=TNextiEndSubC、PrivateSubsearch(a()AsVariant)DimTFori=LBound(a)ToUBound(a)T=a(i):a(i)=a(UBound(a)-i):a(UBound(a)-i)=TNextiEndSubD、PrivateSubsearch(a()AsVariant)DimTDimJAsIntegerJ=(LBound(a)+UBound(a))/2Fori=LBound(a)ToJT=a(i):a(i)=a(UBound(a)-i):a(UBound(a)-i)=TNextiEndSub14.假定有以下两个过程:SubS1(ByValxAsInteger,ByValyAsInteger)DimtAsIntegert=xx=yy=tEndSubSubS2(xAsInteger,yAsInteger)DimtAsIntegert=xx=yy=tEndSub则以下说法中正确的是:A、用过程S1可以实现交换两个变量值的操作,S2不能实现B、用过程S2可以实现交换两个变量值的操作,S1不能实现C、用过程S1和S2都可以实现交换两个变量值的操作D、用过程S1和S2都不能实现交换两个变量值的操作15.单击命令按钮时,下列程序的执行结果为:PrivateSubCommand1_Click()5DimxAsInteger,yAsIntegerx=12:y=32CallPCS(x,y)Printx;yEndSubPublicSubPCS(ByValnAsInteger,ByValmAsInteger)n=n-10m=m-10EndSubA、1232B、232C、23D、12316.在窗体上画一个名称为Comamnd1的命令按钮,然后编写如下通用过程和命令按钮的事件过程:PrivateFunctionfun(ByValmAsInteger)IfmMod2=0Thenfun=2Elsefun=1EndIfEndFunctionPrivateSubCommand1_Click()DimiAsInteger,sAsIntegers=0Fori=1To5s=s+fun(i)NextPrintsEndSub程序运行后,单击命令按钮,则窗体上显示的是:A、6B、7C、8D、917.假定有如下的Sub过程:SubS(xAsSingle,yAsSingle)t=xx=t/yy=tModyEndSub在窗体上画一个命令按钮,然后编写如下事件过程:PrivateSubCommand1_Click()6DimaAsSingleDimbAsSinglea=5b=4Sa,bPrinta,bEndSub程序运行后,单击命令按钮,输出结果为:A、54B、1lC、1.254D、1.25l18.设一个工程由两个窗体组成,其名称分别为Form1和Form2,在Form1上有一个名称为Command1的命令按钮。窗体Form1的程序代码如下:PrivateSubCommand1_Click()DimaAsIntegera=10Callg(Form2,a)EndSubPrivateSubg(fAsForm,xAsInteger)y=IIf(x10,100,-100)f.Showf.Caption=yEndSub运行以上程序,正确的结果是:A、Form1的Caption属性值为100B、Form2的Caption属性值为-100C、Form1的Caption属性值为-100D、Form2的Caption属性值为10019.在窗体上画一个命令按钮,然后编写如下程序:PrivateSubCommand1_Click()DimaAsInteger,bAsIntegera=1b=2PrintN(a,b)EndSubFunctionN(xAsInteger,yAsInteger)AsIntegerN=IIf(xy,x,y)EndFunction程序运行后,单击命令按钮,输出结果为:A、1B、2C、5D、820.单击命令按钮时,下列程序的执行结果为:7PrivateSubCommand1_Click()DimxAsInteger,yAsIntegerx=50:y=78CallPPP(x,y)Printx;yEndSubPublicSubPPP(ByValnAsInteger,ByValmAsInteger)n=n\10m=m\10EndSubA、08B、5078C、450D、785021.阅读程序:SubsubP(b()AsIntegerFori=1To4b(i)=2*iNextiEndSubPrivateSubCommandl_Click()Dima(1To4)AsIntegera(1)=5a(2)=6a(3)=7a(4)=8subPa()Fori=1To4Printa(i)NextiEndSub运行上面的程序,单击命令按钮,输出结果为:A、2B、5C、10D、出错46126714881622.单击命令按钮时,下列程序的执行结果为:PrivateSubCommand1_Click()DimxAsInteger,yAsInteger8x=12:y=32CallProc(x,y)Printx;yEndSubPublicSubProc(nAsInteger,ByValmAsInteger)n=nMod10m=mMod10EndSubA、1232B、232C、23D、12323.设有如下通用过程:PublicSubfun(a()AsInteger,xAsInteger)Fori=1To5x=x+a(i)NextEndSub在窗体上画一个名称为Text1的文本框和一个名称为Command1的命令按钮,然后编写如下事件过程:PrivateSubCommand1_Click()Dimarr(5)AsInteger,nAsIntegerFori=1To5arr(i)=i+iNextfunarr,nText1.Text=Str(n)EndSub程序运行后,单击命令按钮,则在文本框中显示的内容是:A、30B、25C、20D、1524.在窗体上画一个名称为Commandl的命令按钮,再画两个名称分别为Labell、Label2的标签,然后编写如下程序代码:PrivatexAsIntegerPrivateSubCommand1_Click()X=5:Y=3Callproc(x,Y)Labell.Caption=XLabel2.Caption=YEndSubPrivateSubproc(ByValaAsInteger,ByValbAsInteger)9X=a*aY=b+bEndSub程序运行后,单击命令按钮,则两个标签中显示的内容分别是:A、5和3B、25和3C、25和6D、5和625.阅读程序:FunctionF(aAsInteger)b=0Staticcb=b+lc=c+lF=a+b+cEndFunctionPrivateSubCommand1_Click()DimaAsIntegera=2Fori=1To3PrintF(a);NextiEndSub运
本文标题:第八章VB过程
链接地址:https://www.777doc.com/doc-2190578 .html