VB帮忙 急

来源:百度知道 编辑:UC知道 时间:2024/06/03 10:59:38
Private Sub Form_Click()
Dim i As Integer
Dim j As Integer
Dim n As Integer 'n+1层为杨辉三角形的层数
Dim a() As Integer '定义动态数组,因为层数未定
n = InputBox("请输入一个正整数<=9,")
Print "杨辉三角形:"
ReDim a(n + 1, n + 1) '确定数组
If n > 9 Then
MsgBox "输入的数太大,n<=9"
End
End If
For i = 1 To n + 1
a(i, 1) = 1
a(i, i) = 1
Next i
'计算出除第一列和最后一列外的数据,请编写代码。
[单击此处键入相应代码]
'打印输出扬辉三角形
For i = 1 To n + 1
Print Spc(30 - 3 * i);
'打印每一行中的数据,要求个位数的后面空3格,十位数的后面空2格,
'百位数的后面空1格,请编写代码。
[单击此处键入相应代码]
Print
Next i
End Sub

该填什么???????????

计算出除第一列和最后一列外的数据的编码:
For i = 3 To n+1
For j = 2 To i - 1
a(i, j) = a(i - 1, j - 1) + a(i - 1, j)
Next j
Next i

“打印每一行中的数据,要求个位数的后面空3格,十位数的后面空2格, 百位数的后面空1格”需补上的编码是:
For j = 1 To i
Print a(i, j);
Dim k%, p%, q%
k = a(i, j) \ 100: p = (a(i, j) - k * 100) \ 10: q = a(i, j) - k * 100 - p * 10
If k <> 0 Then
Print Spc(1);
ElseIf p <> 0 Then
Print Spc(2);
Else
Print Spc(3);
End If
Next j

记得加我分哦~!哈哈……