问题 单项选择题

下列程序的运行结果是( )。

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

my fun=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。

单项选择题
单项选择题