单选题 程序代码如下,当单击窗体上的Command1控件时,窗体上输出的结果是( )。 Private Sub Command1_Click() Dim Y As Integer,I As Integer Dim A(7)As Integer Y=18:I=0 Do A(I)=Y Mod 2 I=I+1 Y=Y/2 Loop Until Y<1 For j=I-1 To 0 Step-1 Print A(j); Next j End Sub
【正确答案】 B
【答案解析】[解析] 程序中Do-Loop循环的执行过程是:第一次I=0,Y=18,把Y Mod 2的值0存入a(0),I加1使I值变成1,Y/2存入Y,从而使Y变成9,Y为9不小于1,依旧循环:第二次I=1,Y=9,把Y Mod 2的值1存入a(1),i加1变成2,Y/2存入Y,从而使 Y变成4,Y为4不小于1,依旧循环:第三次I=2,Y=4,把Y Mod 2的值0存入a(2),i值加1变成3,Y/2存入Y,从而使Y变成2,Y为2不小于1,依旧循环;第四次I=3,Y=2,把Y Mod 2的值0存入a(3),i值加1变成4,Y/2存入Y,从而使Y变成1,Y为1不小于 1,依旧循环:第五次I=4,Y=1,把Y Mod 2的值1存入a(4),i值的加1变成5,Y/2存入 Y,从而使Y变成0,Y为0小于1,循环退出。再通过For循环从a(4)到a(0)输出数组元素,结果是“1 0 0 1 0”。