当前位置:文档之家› 过程与自定义函数

过程与自定义函数

一、选择题1.某VB程序如下:Private Sub Label1_DblClick( )Dimx As Single,y As SingleLabel1.Caption ="Welcome."x =Val(Text2.Text)y=Sqr(Abs(x))Text1.Text =Str(x +y)End Sub程序运行时,能触发该事件过程的是( )A. 单击Command1B. 单击Label1C. 双击Label1D. 双击Text12.在VB中,使用过程主要是为了( )A. 使程序模块化B. 使程序界面美观C. 给程序加密D. 人机交互更友好3.某对象的一个事件过程代码如下:Private Sub Obj_Click( )s=s +1Text1.Text =Str(s)End Sub下列说法正确的是( )A. 该过程的过程名为“Obj”B. 该对象的类名为“Sub”C. 该对象的对象名为“Obj_Click”D. 该事件是一个“单击”事件4.某VB程序的一个事件过程如下:Private Sub Command1_Click( )Label1.Caption ="welcome!"End Sub程序运行时,能触发该事件的是( )A. 窗体装载B. 单击窗体C. 单击标签Label1D. 单击命令按钮Command15.在VB中,设已定义函数过程f,它有三个实型传值参数。

设a,b,c为实型变量,则下列能调用该函数的正确语句是( )A. fB. f(a+b,b+c)C. f(a+b,b+c,c+a)D. fa+b,b+c,c+a6.有如下VB自定义函数:Function f(x As Integer)As Singlef =Int(Abs(x))End Function该函数返回值的数据类型是( )A. 整数型B. 日期型C. 逻辑型D. 单精度实数型7.有如下VB自定义函数:Function f(i As Single)As BooleanIf i<=0Then f =True Else f=FalseEnd Function执行语句s =f(-0.4)后,逻辑型变量s的值是( )A. 0B. 1C. TrueD. False8.在VB中,有如下程序:Function f(x As Integer)As Integerf =Int(Abs(x)/3)+0.1End FunctionPrivate Sub Command1_Click( )Dimy As Singley =f(-9)Text1.Text =Str(y)End Sub运行该程序,单击命令按钮Command1,文本框Text1中显示的是( )A. -9B. 9C. 3D. 3.19.小明在VB中定义了以下函数,功能是求a和b的最大公约数。

Function gcd(a As Integer,b As Integer)As Integer DoWhile b >0c =aMod ba =bb =cLoopEnd Function调试中发现计算结果一直是0。

经过仔细观察与分析,发现错误的原因是( )A. 函数名有错B. 变量C没有定义C. 函数没有返回值D. b>0应该改为b>=010.某VB程序如下:Private Sub Text1_KeyPress(KeyAscii As Integer)If KeyAscii =13ThenText2.Text =Text1.Text +Str(5)End IfEnd Sub程序运行时,能触发该事件过程的是( )A. 单击文本框Text1B. 单击文本框Text2C. 文本框Text1被激活后,用户在键盘上按下某一个键D. 文本框Text2被激活后,用户在键盘上按下某一个键11.狄同学在设计VB程序时所使用复选框对象的属性窗口如图所示,她想编制该复选框单击事件的处理过程,则该事件处理过程名是( )A. CheckBox_ClickB. 加粗_ClickC. Check1_ClickD. 复选框_Click12.下列VB程序中,f是一个递归函数:Private Sub Command1_Click( )Dim y As LongText1.Text =""y =f(3)Label1.Caption =Str(y)End SubFunction f(n As Integer)As Long '递归函数Text1.Text =Text1.Text +Str(n)If n <=1Thenf =1Elsef =f(n -1)+2End IfEnd Function程序运行时,单击命令按钮Command1后,文本框Text1中显示的内容是( )A. 3B. 321C. 123D. 113.以下为VB算定义求两个数最大公约数函数的代码:Private Function gcd(a as integer,b as integer)as integer …此处省略语句块内容End Function若要在文本框Text1中输出8、18、24这三个数的最大公约数,下面正确的语句是( )A. Text1.Text=gcd(8,18),gcd(18,24),gcd(8,24)B. Text1.Text=gcd(8,18,24)C. Text1.Text=gcd(8),gcd(18),gcd(24)D. Text1.Text=gcd(8,gcd(18,24))14.已知VB自定义函数fun(a as single,b as single)as integer,以下赋值语句正确的是( )A. x=fun(3,5)+”abc”B. x=fun(“3”,”5”)+3C. x=fun(3,”a”)+”123”D. x=fun(3,5)+615.有如下VB程序段:Private Sub Command1_Click ( )Dim x As Integer,y As Integerx =9:y =13Print fun(x,y);x;yEnd SubPrivate Function fun(a As Integer,b As Integer)As Integera =a Mod 5b =b \5fun =a+bEnd Function程序运行时,单击命令按钮Command1,则窗体上的输出结果是( )A. 6913B. 22913C. 642D. 2242二、填空题16.两个素数的差为2,称此两个素数为素数对。

下列程序是找出100以内的素数对,并成对地在列表框List1中显示结果,其中函数s判断参数m是否为素数。

Function s(m)As BooleanDimi As Integers =TrueFor i =2To Int(Sqr(m))If ①Then s=False:Exit ForNext iEnd FunctionPrivate Sub Command1_Click( )Dimi As Integerp1=s(3)For i =5To 100Step 2p2=s(i)If ②Then List1.AddItemStr(i -2)+""+Str(i)p1= ③Next iEnd Sub在程序①、②和③划线处,填入适当的语句或表达式,把程序补充完整17.有以下VB程序:Function f(mAs Integer,n As Integer)As Integer DoWhilem<>nDoWhilem>nm=m-nLoopDoWhile n>mn =n -mLoopLoopf=mEnd FunctionPrivate Sub Command1_Click( )Text1.Text =Str(f(24,18))End Sub(1)该程序的运行结果是__________________。

(2)函数f的功能是____________________。

18.在VB中,有如下程序:Function max(x As Integer,y As Integer)As IntegerIf x >y Then max =x Else max =yEnd FunctionPrivate Sub Command1_Click( )Dima As Integer,b As Integer,c As IntegerDimd As Integer,z As Integera =V al(Text1.Text):b =Val(Text2.Text):c=Val(Text3.Text)d =max(a,b)z =max(d,c)Text4.Text =Str(d)Text5.Text =Str(z)End Sub运行该程序,在文本框Text1、文本框Text2、文本框Text3中分别输入2,-5,6后,单击命令按钮Command1,文本框Text4中显示的是__________,文本框Text5中显示的是________________。

19.李同学设计一个求两数最大公约数的程序。

程序运行如下图所示。

在文本框Text1和文本框Text2中分别输入两个数,单击“计算”按钮Command1,在标签Label1中显示出结果。

VB程序段如下:Private Sub Command1_Click( )Dim m As Integer,n As Integer,r As Integerm =V al(Text1.Text)n =Val(Text2.Text)r =___________________________Label1.Caption ="两数最大公约数为:"+Str(r)End SubFunction fact(m As Integer,n As Integer)As IntegerDim i As Integer,max As IntegerIf m >n Then min =n Else min =mFor i =min To 1 Step -1If _____________________________________Thenmax =iExit ForEnd IfNext ifact =maxEnd Function。

相关主题