单选题 在窗体上画一个命令按钮(名称为Commandl),并编写如下代码:Function Fun 1(ByVal a As Integer, b As Integer)As Integer Dim t As Integer t=a-b:b=t+a:Fun1=t+bEnd FunctionPrivate Sub Commandl_Click() Dim x As Integer x=10 Print Funl(Funl(x,(Funl(x,x一1))),x—1)End Sub 程序运行后,单击命令按钮,输出结果是
【正确答案】 B
【答案解析】解析:本题考查的考点是有关过程调用的。对于这种复杂的函数调用,一定要搞清楚调用的顺序以及参数传递的是值还是地址。根据过程调用的原则,首先调用最内层的Fun1(x,x一1),其结果为12,x的值不变仍为10;然后调用Fun1(x,12),其结果为6,x的值也不变为10;最后调用Funl(6,x一1),其结果为0,x的值也不变为10。本题中的传址调用是没有作用的,因为表达式是不能传地址的。