谁能解释一下这个VB杨辉三角的代码?

PrivateSubForm_click()Dima()AsSinglen=Val(InputBox("请输入行数","杨辉三角"))ReDima(n+1,n+1)For... Private Sub Form_click()
Dim a() As Single
n = Val(InputBox("请输入行数", "杨辉三角"))
ReDim a(n + 1, n + 1)
For i = 1 To n
For j = 1 To i
a(i, 1) = 1
a(i, i) = 1
a(i + 1, j + 1) = a(i, j) + a(i, j + 1)
Print a(i, j);
Next j
Print
Next i
展开
 我来答
VB妮可
推荐于2017-12-15 · TA获得超过3333个赞
知道大有可为答主
回答量:2574
采纳率:0%
帮助的人:0
展开全部
Private Sub Form_click()
Dim a() As Single '设数组A,为单精度型
'通过对话框取得行数,放到变量N中
n = Val(InputBox("请输入行数", "杨辉三角"))

'根据N值重定义数组A为2维的N+1的数组
ReDim a(n + 1, n + 1)

For i = 1 To n '第1层FOR,让I从1,FOR 到N,用来打印行数

For j = 1 To i ' 第2层FOR, 让J从1FOR 到I, 可以想象,每行的数字因为I的累加, 个数也在变化

a(i, 1) = 1 '让每次数组的最左端为1
a(i, i) = 1 '让每次数组的最右端为1
a(i + 1, j + 1) = a(i, j) + a(i, j + 1) '让数组中间的元素等于此元素所在序号的步长加1
Print a(i, j); '打印,数组A(I,J),使用;号使每个J循环中的打印不换行
Next j
Print '每个J循环完成,打印换行

Next i

End Sub
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式