不太明白的vb?

来源:百度知道 编辑:UC知道 时间:2024/05/19 15:38:12
1.Dim a(3,3)
For M=0to3
For n=0to3
If n=m or n=3-m+1 then a(m,n)=1 else a(m,n)=0
Next n
Next m
For m=0to3
For n=0to3
Print a(m,n);
Next n
Print
Next m
A. 1001 b.1000 c.101 d.101
0110 0101 010 010
0110 0010 101 101
1001 0101

2. Dim a(10,10)
For i=1to3
For j=4to5
A(I,j)=i+j
Next j
Next i
Print a(2,3)+(3,4)+(4,5)
a. 7 b.21 c.14 d.16

3. dim a (5)
for i=1to5
a(i)=i*i
next i
print a(i-1)
a .5 b.25 c.0 d.16

4.设有声明语句:
Option base 0
Dim b(-1to10,2to9,20) as integer

第一题:如果你的代码没错的话,输出的结果是
1 0 0 0
0 1 0 1
0 0 1 0
0 1 0 1

你的代码
For M=0 to 3
For n=0 to 3
If n=m or n=3-m+1 then a(m,n)=1 else a(m,n)=0
Next n
Next m
因为,For n=0 to 3 是在For M=0 to 3 的循环内,所M=0时,For n =0 to 3,则:
当M=0,N=0时,a(m,n)=1
当M=0,N=1时,a(m,n)=0
当M=0,N=2时,a(m,n)=0
当M=0,N=3时,a(m,n)=0
你的代码中有一句是:Print
这是当M循环的数据开始变更时,换行的意思。
M的数据有4个,所以结果有4行。
结果的每个值都是由IF条件语句所限制,IF里的or是关键。

第二题:代码有错,代码应该为
Private Sub Form_Click()
Dim a(10, 10)
For i = 1 To 3
For j = 4 To 5
a(i, j) = i + j
Next j
Next i
Print a(2, 3) + a(3, 4) + a(4, 5)'''''''这里
End Sub

答案选A,输出结果是:7
代码中,a(2, 3),a(4, 5)跟for循环所赋的值不相符,无效,只有 a(3, 4)有效,所以输出就只输出了 a(3, 4),它的值就是7

第三题:选B,25

代码中虽然有一个for循环,但
Print a(i - 1)
这个代码只是默认地输出for循环的最后的一个结果
但 i 这个值的最后结果不是5
因为有了一句Next i,所以i的值的最后结果是6
因此
代码Print a(i