在窗体上画一个命令按钮(名称为Commandl),并编写如下代码: Function Funl(ByVal a As Integer,b As Integer)As Integer Dim t As Integer t=a-b

admin2018-09-19  29

问题 在窗体上画一个命令按钮(名称为Commandl),并编写如下代码:
  Function Funl(ByVal a As Integer,b As Integer)As Integer
    Dim t As Integer
    t=a-b
    b=t+a
    Funl:t+b
    End Function
    Private Sub Commandl_Click()
    Dim x As Integer
    x=10
    Print Funl(Funl(X,(Funl(x,x-1))),X—1)
    End Sub
    程序运行后,单击命令按钮,输出结果是(     )。

选项 A、l0
B、0
C、11
D、2l

答案B

解析 本题是过程的嵌套调用,过程嵌套调用时要先计算最内层的过程,然后由里向外执行。因此Funl(Funl(x,(Fun](x,x-1))),x-1)执行过程如下:先执行Funl(x,x-1),由于形参a是按值传递,因此不会影响x的值,x=10,即Fun](10,9)。t=l,b=1+10:11,则函数返回值为l+11=12。再执行Funl(x,(Fun1(x,x-1))),由于内层过程返回12,因此又可写成Funl(x,(12)),由于x仍为原值,因此过程即Funl(10,12)。t=-2,b=-2+10=8,则函数返回值为-2+8=6。最后执行Funl(Funl(x,(Funl(x,x-1))),x-1),即Funl(6,x-1),由于x仍为原值,因此过程即为Funl(6,9)。t=-3’b=-3+6=3,则函数返回值为-3+3=0。
转载请注明原文地址:https://kaotiyun.com/show/thFp777K
0

最新回复(0)