首先题主的自定义函数部分没有问题,判断过程很简洁
问题在于,对自定义函数的参数传递存在误解
在自定义函数中定义的形式参数x,只是一种形式而已,在实际调用这个函数的时候是不需要在重新定义一个相同的x的,只需要把实际参数z传递给函数既可以,做如下修改就好了
Private Function isprise(x As Integer) As Integer
Dim i As Integer
For i = 2 To x - 1
If x Mod i = 0 Then
Exit For
End If
Next i
If i >= x Then
isprise = 1
Else
isprise = 0
End If
End Function
Private Sub Command1_Click()
Dim z As Integer
z = InputBox("enter dater")
If isprise(z) = 1 Then
Print z; "是素数"
Else
Print z; "不是素数"
End If
End Sub
如有疑问,请继续追问,乐意解答,嘿嘿!
你的InputBox("enter dater")返回的值赋给了z,后面的所在判断又是用x