计算机二级

要想在过程Proc调用后返回形参x和Y的变化结果,下列定义语句中正确的是( )。【考点5过程调用与参数传递】A.Sub Proc(x as Integer,Y as Integer)B.Sub Proc(ByVal x as Integer,Y as Integer)C.Sub Proc(x as Integer,ByVal Y as Integer)D.Sub Proc(ByVal x as Integer,ByVal Y as Integer)

题目

要想在过程Proc调用后返回形参x和Y的变化结果,下列定义语句中正确的是( )。【考点5过程调用与参数传递】

A.Sub Proc(x as Integer,Y as Integer)

B.Sub Proc(ByVal x as Integer,Y as Integer)

C.Sub Proc(x as Integer,ByVal Y as Integer)

D.Sub Proc(ByVal x as Integer,ByVal Y as Integer)

如果没有搜索结果,请直接 联系老师 获取答案。
如果没有搜索结果,请直接 联系老师 获取答案。
相似问题和答案

第1题:

要想从子过程调用后返回两个参数的值,下面子过程语句满足要求的是__________。

A.Sub proc(x%,Byval y%)

B.Sub proc(ByVal x%,Byval y%)

C.Sub proc(x%,y%)

D.Sub proc(Byval x%,y%)


Sub f1(n%,m%)

第2题:

要从子过程调用后返回两个结果,下列关于Sub过程语句定义正确的是()。

A.Sub f(ByVal n%, m%)

B.Sub f(n%, m%)

C.Sub f(ByVal n%, ByVal m%)

D.Sub f(n%, ByVal m%)


Sub f1(n%,m%)

第3题:

要从子过程调用后返回两个结果,下列关于Sub过程语句定义正确的是()。

A.Sub f(ByVal n%, ByVal m%)

B.Sub f(n%, ByVal m%)

C.Sub f(ByVal n%, m%)

D.Sub f(n%, m%)


Sub f1(n%,m%)

第4题:

设PROC是带有x,y两个参数的SUB过程,试指出在下列的过程调用中哪些写法是错误的:()

ACALL MYPROC X,Y

BCALL MYPROC(X,Y)

CMYPROC  X,Y

DMYPROC(X,Y)


B

第5题:

若要在子过程Proc1调用后返回两个变量的结果,下列过程定义语句中有效的是( )。

A.Sub Proc1(n,m)

B.Sub Proc1(ByVal n,m)

C.Sub Proc1(n,ByVal m)

D.Sub Proc1(ByVal n,ByVal m)


正确答案:A
解析: 本题考查VBA中参数传递的知识。在VBA的过程调用时,参数有两种传递方式:传址传递和传值传递。如果在过程声明时形参用ByVal声明,说明此参数为传值调用,此时形参的变化不会返回到实参;若用ByRef声明,说明此参数为传址调用,此时形参的变化将会返回到实参;没有说明传递类型,则默认为传址传递。由于本题要求可以返回两个变量的结果,所以应该使用传址调用,不能出现传值调用,也就是不能出现使用ByVal声明的形参。

第6题:

在过程定义中有语句: Private Sub GetData(ByVal data As Integer)其中“ByVal”的含义是( )。【考点5过程调用与参数传递】

A.传值调用

B.传址调用

C.形式参数

D.实际参数


正确答案:A
参数有两种传递方式:传址传递和传值传递。如果在过程声明时形参用ByVal声明,说明此参数为传值调用,此时形参的变化不会返回到实参;若用ByRef声N,说明此参数为传址调用,此时形参的变化将会返回到实参:若没有说明传递类型,则默认为传址传递。

第7题:

若要在子过程Procl调用后返回两个变量的结果,下列过程定义语句中有效的是( )。【考点5过程调用与参数传递】

A.Sub Procl(n,m)

B.Sub Procl(ByVal n,m)

C.Sub Procl(n,BYVal m)

D.Sub Procl(ByVal n,ByVal m)


正确答案:A
本题考查VBA中参数传递的知识。在VBA的过程调用时,参数有两种传递方式:传址传递和传值传递。如果在过程声明时形参用ByVal声明,说明此参数为传值调用,此时形参的变化不会返回到实参;若用ByRef声,说明此参数为传址调用,此时形参的变化将会返回到实参;若没有说明传递类型,则默认为传址传递。

第8题:

要想在过程Proc调用后返回形参x和y的变化结果,下列定义语句中正确的是______。

A.Sub Proc(x as Integer, y as Integer)

B.Sub Proc(By Val x as Integer, y as Integer)

C.Sub Proc(x as Integer, By Val y as Integer)

D.Sub Proc(By Val x as Integer, By Val y as Integer)


正确答案:A
解析:过程定义时,如果形式参数被声明为传值(ByVal项),则过程调用只是相应位置实参的值“单向”传送给形参处理,而被调用过程内部对形参的任何操作引起的形参值的变化均不会反馈、影响实参的值。由于这个过程中数据的传递只是单向性,故称为“传值调用”的“单向”作用形式。反之,如果形式参数被声明为传址(ByRef项),则过程调用是将相应位置实参的地址传送给形参处理,而被调用过程内部对形参的任何操作引起的形参值的变化又会反向影响实参的值。在这个过程中,数据的传递具有双向性,故称为“传址调用”的“双向”作用形式。在过程定义时,如果未做参数说明,则默认为传址调用。本题要在过程Proc调用后返回形参x和y的变化结果,所以本题的参数x和y的说明方式都需要采用传址(ByRef项),所有B、C、D选项不符合要求,由于未做参数说明,则默认为传址调用,则A选项正确。

第9题:

( 27 )要想在过程 Proc 调用后返回形参 x 和 Y 的变化结果,下列定义语句中正确的是

A ) Sub Proc ( x as Integer,y as Integer )

B ) Sub Proc ( ByVal x as Integer, y as Integer )

C ) Sub Proc ( x as Integer,Byval y as Integer )

D ) Sub Proc ( Byval x as Integer, Byval y as Integer )


正确答案:A