在窗体中添加一个名称为Command1的命令按钮,然后编写如下事件代码。
Private Sub Command1_Click()
MsgBox f(24,18)
End Sub
Public Function f(m As Integer,n As Integer)As Integer
Do while m<>n
Do while m>n
m=m-n
Loop
Do While m<n
n=n-m
Loop
Loop
f=m
End Function
窗体打开运行后,单击命令按扭,则消息框的输出结果是( )。
A) 2
B) 4
C) 6
D) 8
参考答案:C
解析: 本程序中包含有两个内循环,下面介绍该程序的运行过程。
程序刚开始运行时,初始值m=24,n=18。首先判断外层循环条件表达式m<>n,值为真,再判断m>n,由于24>18,所以循环继续执行,m=m-n=24-18=6,此时m<n,条件不成立,退出第一个内循环。接着执行第二个内循环:首先判断m<n,条件符合,循环继续执行,n=n-m=18-6=12,此时n>m,第二个内循环的条件仍然符合,再次执行,n=n-m=12-6=6,此时,m=6,n=6,条件表达式的值为假,退出第二个内循环,再判断外层循环的条件m<>n,此时,条件表达式m<>n的值为假,退出外层循环,循环结束。函数的返回值为6,所以单击命令按扭,则消息框的输出结果是6。所以本题答案为C)。