窗体中有一个名为Commandl的按钮,该模块内还有一个函数过程: Public Function f(X As Integer)As Integer Dim y As Integer X=30 y=3 f=x*y

admin2021-04-27  1

问题 窗体中有一个名为Commandl的按钮,该模块内还有一个函数过程:
    Public Function f(X As Integer)As Integer
    Dim y As Integer
    X=30
    y=3
    f=x*y
    End Function
    Private Sub Commandl Click()
    Dim Y As Integer
    Static X As Integer
    x=10
    y=5
    y=f(x)
    Debug.Print X;Y
    End Sub
    打开窗体运行后,如果单击按钮,则在立即窗口上显示的内容是(    )。

选项 A、10 5
B、10 90
C、30 5
D、30 90

答案D

解析 本题考查的是参数传递和静态变量。由Dim定义的变量通常称为动态变量,其值会被重新赋值,由Static定义的变量称为静态变量,每次引用该变量时其值会继续保留。在commandl一click()事件中,定义y是动态变量,定义x为静态变量,然后进行赋值,x被赋值10,y被赋值5,然后执行y=f(x)语句,此时x的值是10,调用f函数,即f(10)。在f()函数中,定义y为动态变量,x=30,y=3,f=30*3=90,返回到调用语句,所以y的值是90。由于x是静态变量,此时x的值是30,所以程序运行结果是30 90。故本题答案为D。
转载请注明原文地址:https://www.kaotiyun.com/show/QfSp777K
0

最新回复(0)