数组题 望高手帮忙!

kimifan 2006-03-31 03:40:08
随机产生二维数组a(3,3),交换最左边和最右边的两列元素,然后输出对角线上的元素。
不明白显红那行哪里错了,如果有更简单的代码更好 多谢了 急!

程序代码如下:
Private Sub Form_Click()
Dim a(3, 3) As Integer
For j = 0 To 3
For i = 0 To 3
a(i, j) = Int(90 * Rnd + 10)
Next
Next
For i = 0 To 3
temp = a(i, 0): a(i, 0) = a(i, 3): a(i, 3) = temp
Next
Print "输出数组对角线元素"
For i = 0 To 3
If i - (3 - i) <= 0 Then
Print Tab(i * 3 + 1); a(i, i); Spc((2 - 2 * i) * 3 + 1); a(i, 3 - i)
Else
Print Tab((3 - i) * 3 + 1); a(i, 3 - i);
此行显红 Spc((2 * i - 4) * 3 + 1); a(i, i)
End If
Next
End Sub
...全文
159 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
northwolves 2006-03-31
  • 打赏
  • 举报
回复
For i = 0 To 3
For j = 0 To 3
Print IIf(i + j = 3 Or i = j, a(i, j), Space(3));
Next
Print
Next
northwolves 2006-03-31
  • 打赏
  • 举报
回复
SPACE<>SPC

Private Sub Form_Click()
Dim a(3, 3) As Integer
For j = 0 To 3
For i = 0 To 3
a(i, j) = Int(90 * Rnd + 10)
Next
Next
For i = 0 To 3
temp = a(i, 0): a(i, 0) = a(i, 3): a(i, 3) = temp
Next
Print "输出数组对角线元素"
For i = 0 To 3
If i - (3 - i) <= 0 Then
Print Tab(i * 3 + 1); a(i, i); Spc((2 - 2 * i) * 3 + 1); a(i, 3 - i)
Else
Print Tab((3 - i) * 3 + 1); a(i, 3 - i); Space((2 * i - 4) * 3 + 1); a(i, i)
End If
Next
End Sub

7,759

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧