下列程序段的执行结果是( )。 Dim A(3,3) For M=1 To 3 For N=1 To 3 If N=M Or N=3-M+1 Then A(M,N)=1 Else A(N,N)=0 End If Next N Next M For M

admin2010-11-20  23

问题 下列程序段的执行结果是(    )。
Dim A(3,3)
For M=1 To 3
For N=1 To 3
If N=M Or N=3-M+1 Then
A(M,N)=1
Else
A(N,N)=0
End If
Next N
Next M
For M=1 To 3
For N=1 To 3
Print A(M,N)
Next N
Print
Next M

选项 A、1  0  0
0  1  0
0  0  1

B、1  1  1
1  1  1
1  1  1

C、0  0  0
0  0  0
0  0  0

D、1  0  1
0  1  0
1  0  1


答案D

解析 For循环的一般格式是:
Forcounter=start To end [Step step]
statements]
[Exit For]
statements]
Next [counter]
当所有循环中的语句都执行后,step的值会加到counter中。此时,循环中的语句可能会再次执行,也可能是退出循环并从Next语句之后的语句继续执行。可以将一个For…Next循环放置在另一个For…Next循环中,组成嵌套循环。不过在每个循环中的counter要使用不同的变量名。
根据题目中的意思,在If N=M Or N=3-M+1 Then条件成立时,给数组元素赋值为1;否则给数组元素赋值为0。当N=1,M=1;N=1,M=3;N=2,M=2;N=3,M=3;N=3,M=1时,数组元素为1,其他的数组元素为0。
转载请注明原文地址:https://kaotiyun.com/show/xdmp777K
0

最新回复(0)