VB高手进来回答问题了 举手之劳 得5分

来源:百度知道 编辑:UC知道 时间:2024/06/05 17:53:06
Private Sub Form_Click()
Cls
Dim a As Integer
Dim b As Integer
Dim jgstr As String

For a = 1 To 9
jgstr = ""
For b = 1 To 9
jgstr = jgstr & a & " × " & b & "=" & a * b & vbTab

Next b
Print jgstr
Next a

End Sub

里面的jgstr = "" 为什么要给与空值
我去掉了 发现就乱了 , 说明下原理

你这是打印乘法口诀表?
如果不用第一个循环jgstr = ""
你就会发现后面的也接着第一行写下去了
因为第二个循环显示的是a*b=$%#
当第二个循环显示完了之后a=2,这个时候表达式应该是2*1=2 2*2=4 2*3=6这样的,但是如果你不jgstr = ""就会接着第一列一直写下去而没有换行
其实我认为把循环稍微改动下可以变得更加美观,就好像小时候文具盒里面的乘法口诀表一样,显示第一行只有一个1*1=1,然后第二行是1*2=1 2*2=4……
For a = 1 To 9
jgstr = ""
For b = 1 To a
jgstr = jgstr & b & " × " & a & "=" & a * b & vbTab
Next b
Print jgstr
Next a

你这个九九乘法表每算完一组都要清空,不然jgstr里的东西越积越多,都重复了

这句话调用了之前的值
jgstr = jgstr & a & " × " & b & "=" & a * b & vbTab

如果不给控制,下次循环自然就把上次的赋值一起写上了