单击命令按钮时,下列程序的运行结果为Private Sub Command1_Click( ) Print MyBM(23,18)End SubPublic Function MyBM(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 MyBM=mEnd FunctionA.0B.1C.3D.5

题目

单击命令按钮时,下列程序的运行结果为Private Sub Command1_Click( ) Print MyBM(23,18)End SubPublic Function MyBM(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 MyBM=mEnd Function

A.0

B.1

C.3

D.5


相似考题
更多“单击命令按钮时,下列程序的运行结果为Private Sub Command1_Click( ) Print MyBM(23,18)End SubPublic Function MyBM(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 MyBM=mEnd FunctionA.0B.1C.3D.5”相关问题
  • 第1题:

    (25)下列程序的运行结果是 。 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 SubA.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。

  • 第2题:

    有如下程序,该程序的执行结果为______。 Dim k As Integer n=5 m=1 k=1 Do While k <= n m=m*2 k=k+1 Loop Print m

    A.1

    B.5

    C.32

    D.40


    正确答案:C

  • 第3题:

    阅读下面的程序: Private Sub Form_Click() Dim m,n As Integer m=InputBox("请输入M的值") m=Val(m) m1=m n=InputBox("请输入N的值") n=Val(n) n1=n Do While n<>0 remin=m Mod n m=n n=remin Loop Print m1,n1,m End Sub 程序运行后,单击窗体,在对话框中分别输入16和24,则程序在窗体上的输出结果为

    A.16 24 4

    B.16 24 8

    C.24 16 6

    D.24 16 8


    正确答案:B
    解析:本题捉供的是用“辗转相除法”求两个整数最大公约数的程序。一般来说,假定有两个整数m和n(m>n),将m作为被除数,n作为除数,相除后余数为r。如果r不等于0,则令m=n,n=r,再进行一次除法运算(以新的m作为被除数,n作为除数),得到新的r。如果r仍不等于0,则重复上述过程,直到r=0为止,此时的n就是两个数的最大公约数。在本题的DoWhile-Loop循环中,通过辗转相除求最大公约数,循环结束的条件是相除后余数为0,如果不为0,则一直“除”下去。这里用Mod运算符求余数,较大的整数作为被除数或者较小的整数作为被除数都可以得到正确结果,但整除的次数可能会不一样。在本题的输入中,先输入16,再输入24,求出的最大公约数仍为8。

  • 第4题:

    单击命令按钮时,下列程序代码的运行结果为 Private Sub Command1_Click() Print MyFunc(20, 18) End Sub Public Function MyFunc(m As Integer, n As Integer)As Integer Do While m<>n Do While m>n:m=m-n:Loop Do Whle m<n:n=n-m:Loop Loop MyFunc=m End Function

    A.0

    B.2

    C.4

    D.6


    正确答案:B
    解析:本题主要考查对函数的定义和调用的理解。此题程序代码中,被调过程采用了Do While…Loop的嵌套语句结构,主调过程只调用了一次被调过程,Print MyFunc (20,18)语句表明,程序最后输出的只是被调过程的返回值。主调过程在调用被调过程 MyFunc时,把数值20和18分别传给形参m和n,从被调过程中的循环语句来看,因为此时 m的值大于n的值,所以执行语句m=m-n, m的值变为2,由语句MyFunc=m可看出,此过程的返回值就是m的值即2。

  • 第5题:

    单击命令按钮时,下列程序代码的运行结果为 Private Sub Command1_Click() print MyFunc(20,18) End Sub Public Function MyFunc (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 MyFunc=m End FunCtion

    A.0

    B.2

    C.4

    D.6


    正确答案:B
    解析:此题程序代码中,被调过程采用了DoWhile…Loop的嵌套语句结构,主凋过程只调用了一次被调过程,PrintMyFtunc(20,18)语句表明,程序最后输出的只是被调过程的返回值,主调过程在调用被调过程MyFunc时,把数值20和18分别传给形参m和n,从被调过程中的循环语句来看,因为此时m的值大于n的值,所以执行语句m=m-n,m值变为2,由语句MyFunc=m可看出,此过程的返回值就是m的值,即2。

  • 第6题:

    下面程序的运行结果是 ______ 。程序的功能是 _______ 。

    Public 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(15,15)

    End Sub


    正确答案:5 互换两数
    5 互换两数

  • 第7题:

    单击命令按钮时,下列程序代码的执行结果为______ 。Public Function MyFune(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 MyFunc=mEnd FunctionPrivate Sub Command1_Click() Print MyFunc(24, 18)End Sub

    A. 2

    B.4

    C.6

    D.8


    正确答案:C

  • 第8题:

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

    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。

  • 第9题:

    单击命令按钮时,下列程序的运行结果为

    Private Sub Command1_Click()

    Print Fun(23, 18)

    End Sub

    Public Function Fun(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

    Fun=m

    End Function

    A.0

    B.1

    C.3

    D.5


    正确答案:B
    解析:此题程序代码中,被调过程采用了Do While...Loop的嵌套语句结构,主调过程只调用了一次被调过程 ,Print Fun(23, 18) 语句表明,程序最后输出的只是被调过程的返回值。主调过程在调用被调过程Fun时,把数值23,18分别传给形参m和n,从被调过程中的循环语句来看,因为此时m的值大于n的值,所以执行语句m = m - n,m值变为5,然后循环调用,直到m=n,而由语句Fun = m可看出,此过程的返回值就是m的值,即为1。

  • 第10题:

    在窗体中添加一个名称为Commandl的命令按钮,然后编写如下事件代码:Private Sub Commandl Click( ) MsgBox f(24,18)End Sub Public Function f(m As Integer,n As Integer)As"integerDo 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
    C。【解析】本题第一个内层循环,m的值为24-18=6,n的值为18;第二个内层循环l,m的值为6,n的值为18-6=12;第二个内层循环2,In的值为6,n的值为12-6=6。

  • 第11题:

    单击命令按钮时,下列程序的执行结果为 Private Sub Command1_Click Dim x As Integer, y As Integer x=12:y=32 Call Proc(x,y. Print x; y End Sub Public Sub Proc(n As Integer, ByVal m As Integer. n=n Mod 10 m=m Mod 10 End Sub

    A.1232

    B.232

    C.23

    D.123


    正确答案:B

  • 第12题:

    单击命令按钮时,下列程序的运行结果为

    Private Sub Command1_Click()

    Print MyBM(23, 18)

    End Sub

    Public Function MyBM(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

    MyBM=m

    End Function( )。

    A.0

    B.1

    C.3

    D.5


    正确答案:B

  • 第13题:

    在窗体中添加—个名称为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,此时mn,条件不成立,退出第一个内循环。接着执行第二个内循环:首先判断mn,条件符合,循环继续执行,n=n-m=18-6=12,此时n>m,第二个内循环的条件仍然符合,再次执行,n=n-m=12-6=6,此时,m=6,n=6,条件表达式的值为假,退出第二个内循环,再判断外层循环的条件m>n,此时,条件表达式m>n的值为假,退出外层循环,循环结束。函数的返回值为6,所以单击命令按扭,则消息框的输出结果是:6。

  • 第14题:

    下列程序的运行结果是( )。 Private Function myfun(m,n) Do while m>n Do While m>n:m=m-n:Loop Do Wllile 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
    B。【解析】求解本题的关键在于理解好3个DoWhile循环的执行顺序,第2个和第3个DoWhile循环嵌套在第l个DoWhile循环内,先执行第2个循环,然后是第3个循环,最后是外层循环即第1个DoWhile循环。程序执行过程是:m=9,n=8;第1个DoWhile循环完,执行第2个DoWhile循环,m=m-n=1;退出第2个DoWhile循环;执行第3个DoWhile循环,n=n-m,最后n的值为1;退出第3个DoWhile循环;退出第1个DoWhile循环。程序执行结果是l。

  • 第15题:

    下列程序的运行结果是 Private Sub Form_Click() Dim k As Integer n=5 m=1 k=1 Do m=m+2 k=k+1 Loop Until k>n Print m End Sub

    A.1

    B.12

    C.11

    D.32


    正确答案:C
    解析:本题主要是对Do...Loop Until循环语句的考查。当Loop Until后的条件不成立时,即退出循环。该题在k为1、2、3、 4、5时,都执行了循环语句,故一共执行了五次,同时m=m+2也执行了五次,最后m的值增加了10,故运行结果为11。

  • 第16题:

    下列程序段的执行结果为 m=2 n=3 Do m=m+n n=n + 1 Loop While m<10 Print m;n

    A.1 5

    B.14 6

    C.a b

    D.10 25


    正确答案:B
    解析:此题内容简单,开始m为2,n为3,执行Do语句,具体运行为:执行m=m+n;n=n+1语句后,m为5,n为4。这样运行到m=14,程序终止循环,此时n=6。注意:Do…LoopUntil循环结构,DoWhile|Until…Loop循环结构。

  • 第17题:

    单击命令按钮后,下列程序代码的执行结果是______。

    Public Sub fun (a As Integer, b As Integer, c As Integer)

    Do

    a=b+ c

    n=n+1

    Loop While n > 3

    End Sub

    Private Sub command1_ click()

    Dim m As Integer, n As Integer, i As Integer

    For i = 0 To 2: m = n + 1: Next i

    For i = 1 To 2: Call fun (m, n, i): Next i

    For i = 0 To 3

    Print m;

    Next i

    End Sub


    正确答案:2 2 2 2
    2 2 2 2

  • 第18题:

    单击命令按钮时,下列程序的运行结果为 Private Sub Command1_Click( ) Print Fun(23, 18) End Sub Public Function Fun(m As Integer, n As Integer) As Integer Do Whilem <> n Do While m > n : m--m - n: Loop Do While m < n : n=n - m: Loop Loop Fun =m End Function

    A.0

    B.1

    C.3

    D.5


    正确答案:B
    解析:此题程序代码中,被调过程采用了Do While……Loop的嵌套语句结构,主调过程只调用了一次被调过程,Print Fun(23,18)语句表明,程序最后输出的只是被调过程的返回值。主调过程在调用被调过程Fun时,把数值23,18分别传给形参m和n,从被调过程中的循环语句来看,因为此时m的值大于n的值,所以执行语句m=m-n,m值变为5,然后循环调用,直到m=n,而由语句Fun=m可看出,此过程的返回值就是m的值,即为1。

  • 第19题:

    下列程序的运行结果是( )。 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个DoWhile循环的执行顺序,第2个和第3个DoWhile循环嵌套在第1个DoWhile循环内,先执行第2个循环,然后是第3个循环,最后是外层循环即第1个DoWhile循环。程序执行如下:m=9,n=8:第1个DoWhile循环内,执行第2个DoWhile循环,m=m-n=1;退出第2个DoWhile循环;执行第3个DoWhile循环,n=n-m,最后n的值为1;退出第3个DoWhile循环;退出第1个DoWhile循环。程序执行结果是1。

  • 第20题:

    窗体上有一个名称为Command1的命令按钮,并有如下程序: Private Sub Command1Click( ) Dim m As Integer,n As Integer m=InputBox("输入第一个数") nzInputBox("输入第二个数") Do While m<>n Do While m>n m= m-n Loop Do While n>m n=n-m Loop Loop Print m End Sub 该程序的功能是( )。

    A.求数值m和n的最大公约数

    B.求数值m和n的最小公倍数

    C.求数值m和n中的较大数

    D.求数值m和n中的较小数


    正确答案:A
    A。【解析】此题的算法为经典的辗转相减法求最大公约数算法,也可用特殊值法求解。

  • 第21题:

    阅读下面的程序; Function Func(x As Integer,y As Integer)As Integer Dim n As Integer Do While n < = 4 x=x + y n = n + 1 Loop Func=x End Function Private Sub Command1_Click() Dim x As Integet, y As Integer Dim n As Integer,z As Integer x=1 y=1 For n = 1 To 6 z=Func(x,y) Next n Print z End Sub 程序运行后,单击命令按钮,输出的结果为.

    A.16

    B.21

    C.26

    D.31


    正确答案:D
    解析:过程Func有两个参数,使用的是引用方式,参数和返回值均为整型,在命令按钮事件过程的For循环中调用Func过程,共循环6次,每次循环调用一次。两个过程中使用的变量(包括参数)基本相同,但由于是局部变量,不会发生冲突。无论在事件过程还是通用过程中,y的值始终保持不变,总等于1。在Func过程中,DoLoop循环共执行5次,通过变量n控制(从0~4),每次都执行x=x+1,因此,每调用一次Func过程,都使得x=x+5,并将返回值赋给事件过程中的变量z。6次调用中,循环变量n的计算过程为:1、2、3、4、5、6:返回值z的结果为:6、11、16、21、26、31。

  • 第22题:

    单击命令按钮时,下列程序的运行结果为 Private Sub Command1_Click( ) Print MyFund(20,18) End Sub Public Function MyFund(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 MyFund=m End Function

    A.0

    B.2

    C.4

    D.6


    正确答案:B
    解析:程序代码被调过程采用了DoWhile…Loop的嵌套语句结构,主调过程只调用了—次被调过程,PrintMyFund(20,18)语句表明,程序最后输出的只是被调过程的返回值。主调过程在调用被调过程MyFund时,把数值20,18分另"专给形参m和n,从被调过程中的循环语句来看,因为此时m的值大于n的值,所以执行语句m=m-n,m值变为2,而由语句MyFund=m可以看出,此过程的返回值就是m的值,即2。

  • 第23题:

    单击命令按钮时,下列程序代码的执行结果为 Private Sub Command1_Click( ) Print MyFunc(24,18) End Sub Public Function MyFunc(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 My Func=m End Function

    A.2

    B.4

    C.6

    D.8


    正确答案:C
    解析:根据Myfune的定义,当m与n不相等时执行D。循环,此时如果m大于n,则执行m=m-n的Do循环。据此,MyFune(24,18)的值应该为24减去18。