窗体上有Text1、Text2两个文本框,并编写了下面的程序代码: Private Sub Form_Click() x%=29 Text1=fun(x) Do x=x+1 Loop Until IsPrim

admin2016-08-24  26

问题 窗体上有Text1、Text2两个文本框,并编写了下面的程序代码:
    Private Sub Form_Click()
    x%=29
    Text1=fun(x)
    Do
    x=x+1
    Loop Until IsPrime(x)
    Text2=x
    End Sub
    Private Function fun(ByVal x As Integer)As Integer
    Do
    x=x一1
    Loop Until IsPrime(x)
    fun=x
    End Function
    Private Function IsPrime(x As Integer)As Boolean
    For k=2 To x/2
    If x Mod k=0 Then
    IsPrime=False
    Exit Function
    End If
    Next k
    IsPrime=True
    End Function
    运行程序后单击窗体,则Text1、Text2中分别显示的是(    )。

选项 A、23和31
B、23和29
C、30和31
D、29和31

答案A

解析 本题中IsPrime函数的功能是判断一个数是否为素数,是素数则返回True,不是则返回False;素数的判断方法是:一个数除了能被1和自身整除以外,不能再被其他数整除。fun函数的功能是找出小于形参x最大的素数,并返回。在过程Form_Click事件过程中,Text1=fun(x),x=29,通过调用fun函数,得到小于29的最大素数为23,所以Text1中的值为23,Form_Click事件过程中的Do~Loop Until循环的功能是找到大于变量x的最小素数,大于29的最小素数为31,故Text2中的值为31,所以A选项正确。
转载请注明原文地址:https://kaotiyun.com/show/SYLp777K
0

最新回复(0)