医疗责任保险 哪买:vb问题1,高手才进,讲的好我给她加分

来源:百度文库 编辑:查人人中国名人网 时间:2024/05/15 06:20:49
private sub command1_click()
for n=1 to 20
if n Mod 3 <>0 Then m=m+n\3
next m
print m
end sub
帮我写出程序运行后,单击命令按钮,窗体上的显示内容,并给我解释以上语句的意思,要讲的清楚的!
哦 我是打错了 应该是
private sub command1_click()
for n=1 to 20
if n Mod 3 <>0 Then m=m+n\3
next n
print n
end sub

private sub command1_click()
for n=1 to 20
'计数器n从1到20

if n Mod 3 <>0 Then m=m+n\3
'对n进行判断,如果n不是3的倍数(也就是说n除以3的余数不为0),那么m就在原m值的基础上加上n\3的值(n\3就是n÷3的商的整数部分)

next n
'楼主你这里写成next m了,这里就是让计数器n增加1,再继续回到for语句运行代码

print m
'把m的值打印在窗体上

end sub

显示出来是42啊

首先,你的程序错误颇多
1.N,M两个遍两未定义
2.for循环的变量是n,为什么要next m?

将程序改为:
Private Sub command1_click()
Dim n, m
For n = 1 To 20
If n Mod 3 <> 0 Then
m = m + n \ 3
End If
Next n
Print m
End Sub
运行后得到"42"

就是说
让n在1-20中循环
如果n除以3有余数的话
就让m加上n/3的值
循环完后输出最后的m值

这个问题不必高手回答,我是新手也知道 。
private sub command1_click() '一个按钮command1的点击事件,点击按钮将发生下面的过程。
for n=1 to 20 '从1到20开始循环,典型的for ..next语句
if n Mod 3 <>0 Then m=m+n\3 ' 如果n的值与3不能整除,那么m=m+n\3,n\3是n除以3取其结果的整数。
next n'这里的m应该是n,"for..next" 语句中的n要相关
print m '输出m的值。是42
end sub

我觉得你把问题打错了。循环条件是n,却next m。
把题搞清楚先

你写的代码有误,到vb里运行一下就知道了很简单啊