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

13 查阅

[问答题] 在考生文件夹下有一个工程文件T507.vbp,其窗体上有一个文本框,名称为Text1;还有一个命令按钮,名称为C1,标题为“计算”,如图所示。有一个函数isprime()可以在程序中直接调用,其功能是判断参数a是否为素数,如果是素数,则返回True,否则返回False。请编写适当的事件过程,使得在运行时,单击“计算”按钮,则找出小于2000的最大素数,并显示在Text1中。注意:考生不得修改isprime()函数过程和控件的属性。试题源程序:1 Private Function isprime(a As Integer)As Boolean2 Dim flag As Boolean3 flag=True4 b%=25 Do While b%<=Int(a/2)And flag6 If Int(a/b%)=a/b% Then7 flag=False8 Else9 b%=b%+110 End If11 Loop12 isprime=flag13 End Function

参考答案:

第一步:启动Visual Basic,打开考生文件夹下的工程文件T507.vbp。第二步:双击窗口中的任何位置,进入程序编辑窗口,补充程序如下:1 Private Sub C1 Click()2 Static a As Integer3 Dim i As Integer4 For i=1 To 20005 Call isprime(i)6 If isprime(i)=True Then7 a=i8 End If9 Next i10 Me Text1.Text=a11 End Sub第三步:调试运行程序,正

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

计算机考试