[问答题] 在考生文件夹下有一个工程文件T507.vbp,其窗体上 有一个文本框,名称为Text1;还有一个命令按钮,名称为C1,标 题为“计算”,如图所示。有一个函数isprime( )可以在程序

16 查阅

[问答题] 在考生文件夹下有一个工程文件T507.vbp,其窗体上 有一个文本框,名称为Text1;还有一个命令按钮,名称为C1,标 题为“计算”,如图所示。有一个函数isprime( )可以在程序中直 接调用,其功能是判断参数a是否为素数,如果是素数,则返回 True,否则返回False。请编写适当的事件过程,使得在运行时, 单击“计算”按钮,则找出小于2000的最大素数,并显示在 Text1中。

注意:考生不得修改isprime( )函数过程和控件的属性。

试题源程序:

1 Private Function isprime(a As Integer)As Boolean

2 Dim flag As Boolean

3 flag=True

4 b%=2

5 Do while b%<=Int(a/2)And flag

6 If Int(a/b%)=a/b%T hen

7 flag=False

8 Else

9 b%=b%+1

10 End If

11 Loop

12 isprime= flag

13 End Eunction

参考答案:

第一步:启动Visual Basic,打开考生文件夹下的工程文件T507. vbp。 第二步:双击窗口中的任何位置,进入程序编辑窗口,补充程序如下: 1 Private Sub C1_Click( ) 2 Static a As Integer 3 Dim i As Integer 4 For i=1 To 2000 5 Call isprime(i) 6 If isprime(i)=True Then 7 a=i 8 End If 9 Next i 10 Me.Text1. Te

本题主要考查过程函数的调用以及For循环语句的使用。考生可在窗体上双击C1,进入程序编写窗口。根据题意,主要是使2000以内的最大素数显示在文本框中,故可以使用For循环语句,令变量i在1~2000之间取值,逐一作为实参调用isprime( )函数过程,当遇到isprime( )函数过程返回True值时,把i的值赋给a。这样循环便可得到2000以内的最大素数。 这也是本题最后所给两点要求的原因。

计算机考试