问题 单项选择题

下列程序的运行结果是( )。
Private Function myfun(m,n)
Do While m>n
Do While m>n:m=m-n:Loop
Do While n>m:n=n-m:Loop
Loop
myfun=m
End Function
Private Sub Command1_Click()
Print myfun(9,8)
End Sub

A.2

B.1

C.4

D.3

答案

参考答案:B

解析: 求解本题的关键在于理解好3个Do While循环的执行顺序,第2个和第3个Do While循环嵌套在第1个Do While循环内,先执行第2个循环,然后是第3个循环,最后是外层循环即第1个 Do While循环。程序执行如下:m=9,n=8:第1个Do While循环内,执行第2个Do While循环,m=m-n=1;退出第2个Do While循环;执行第3个Do While循环,n=n-m,最后n的值为1;退出第3个 Do While循环;退出第1个Do While循环。程序执行结果是1。

单项选择题
多项选择题