( 29 )设 a 、 b 都是自然数,为求 a 除以 b 的余数,某人编写了以下函数:Function fun(a As Integer,b As Integer)While a>ba=a-bWendfun=aEnd Function在调试时发现函数是错误的。为使函数能产生正确的返回值,应做的修改是A )把 a=a-b 改为 a=b-aB )把 a=a-b 改为 a=a\bC )把 While a>b 改为 While a<bD )把 While a>b 改为 While a>=b

题目

( 29 )设 a 、 b 都是自然数,为求 a 除以 b 的余数,某人编写了以下函数:

Function fun(a As Integer,b As Integer)

While a>b

a=a-b

Wend

fun=a

End Function

在调试时发现函数是错误的。为使函数能产生正确的返回值,应做的修改是

A )把 a=a-b 改为 a=b-a

B )把 a=a-b 改为 a=a\b

C )把 While a>b 改为 While a<b

D )把 While a>b 改为 While a>=b


相似考题
更多“( 29 )设 a 、 b 都是自然数,为求 a 除以 b 的余数,某人编写了以下函数:Function fun(a As Intege ”相关问题
  • 第1题:

    设有以下函数过程: Function fun(a As Integer,b As Integer) Dim c As Integer If a<b Then c=a:a=b:b=C End IF c=0 Do c=c+a Loop Until c Mod b=0 fun=c End Function 若调用函数fun时的实际参数都是自然数,则函数返回的是( )。

    A.a、b的最大公约数

    B.a、b的最小公倍数

    C.a除以b的余数

    D.a除以b的商的整数部分


    正确答案:B
    B。【解析】本题考查了DoLoop循环,实现的是最小公倍数。本题中If语句实现了a和b交换。

  • 第2题:

    设有以下函数过程:

    Function fun(a As Integer,b As Integer)

    Dim c As Integer

    If a<b Then

    c=a:a=b:b=C

    End IF

    c=0

    Do

    c=c+a

    Loop Until c Mod b=0

    fun=c

    End Function

    若调用函数fun时的实际参数都是自然数,则函数返回的是( )。

    A.a、b的最大公约数

    B.a、b的最小公倍数

    C.a除以b的余数

    D.a除以b的商的整数部分


    正确答案:B

    B。【解析】本题考查了Do Loop循环,实现的是最小公倍数。本题中If语句实现了a和b交换。

  • 第3题:

    求余函数Mod(m,n)是求m除以n它的余数等于多少。


    4 略

  • 第4题:

    有一个自然数“x”,除以4的余数是3,除以5的余数是4,问“x”除以20的余数是多少?( )


    正确答案:D
    这个数加上1后可以整除4、5,因此也可以整除20。那么原数除以20余数是19。

  • 第5题:

    (7分)自然x是一个三位数,已知X除以8的商是a、余数是b,x除以9的商是c、余数是d,且a+d=13,求所有满足条件的自然数x。


    答案:
    解析:
    由于a,b,c,d均为自然数,且a+d=13,所以a∈]0,13]。又有x是一个三位数,x除以8的商是0,故a=12或13。 若a=12,x是一个三位数,且b∈[0,7],故满足条件x可以为100,101,102,103,此时d=1,要满足x除以9余数为1.100成立;
    若a=13,x是一个三位数,且b∈[0,7],故满足条件x可以为104,105,106,107,108,109,110,111,此时d=0,要满足x除以9余数为0,只有108。
    综上,满足条件的自然数x有100,108。