求助大神!VB程序编写输出1000到1100之间所有质数,每行输出8个。帮忙看一下哪里出错了,运行不出结果啊!

PrivateSubCommand1_Click()DimiAsInteger,nAsInteger,kAsIntegerForn=1000To1100Fori=2Ton... Private Sub Command1_Click()
Dim i As Integer, n As Integer, k As Integer
For n = 1000 To 1100
For i = 2 To n - 1
If n / i = n \ i Then
Exit For
End If
Next i
Next n
Print ;
k = k + 1
If k Mod 8 = 0 Then
Print ;
End If
End Sub
以上运行没有任何结果,我觉得没有什么错的,可是它就是没有结果就是错了~~(泪奔~~)
我又改成:
Private Sub Command1_Click()
Dim i As Integer, n As Integer, k As Integer
For n = 1000 To 1100
For i = 2 To n - 1
If n Mod i=0 Then
Exit For
End If
Next i
Print ;
k = k + 1
If k Mod 8 = 0 Then Print ;
Next n
Print
End Sub
它还是没有结果
软件肯定没有坏~~
帮忙看看哪里出错了应该怎么改吧,谢谢了!!(不会的朋友请不要随便的,不负责任的乱说,谢谢合作~~)
展开
 我来答
xiaoyuemt
2012-05-03 · TA获得超过1.6万个赞
知道大有可为答主
回答量:3202
采纳率:64%
帮助的人:1690万
展开全部
Private Sub Command1_Click()
Dim i As Integer, n As Integer, k As Integer
For n = 1000 To 1100
For i = 2 To n - 1
If n Mod i = 0 Then
Exit For
End If
Next i
If i = n Then
Print n;
k = k + 1
If k Mod 8 = 0 Then Print
End If
Next n
End Sub
三个错误:
1.只有在质数的时候才打印,所以需要加if i=n 来判断
2.第一个print ,你是空打印,当然什么也没有,应该是 print n;
3.第二个print 应该换行,不用加;
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
duyin2011
2012-05-03 · TA获得超过2400个赞
知道大有可为答主
回答量:1723
采纳率:100%
帮助的人:667万
展开全部
用这个试试:
Private Sub Command1_Click()
Dim flag As Boolean
Dim i, j, a As Integer
Dim sum As Double
For i = 1000 To 1100 '输入范围
For j = 2 To i - 1
a = i Mod j
If a = 0 Then flag = True
Next j
If flag = False Then
sum = sum + 1
Print i;
If sum = 8 Then sum = 0: Print Chr(10) + Chr(13)
End If

flag = False
Next i

End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式