编写以下程序段: DIM I, J, K, A A=0 FOR I = 1 TO 3 FOR J = 1 TO I FOR K=-J TO 3 A=A+1 NEXT K NEXT J NEXT I 执行上面的三重循环后,变量A的值为( )。A.3B.9C.14D.21

题目

编写以下程序段: DIM I, J, K, A A=0 FOR I = 1 TO 3 FOR J = 1 TO I FOR K=-J TO 3 A=A+1 NEXT K NEXT J NEXT I 执行上面的三重循环后,变量A的值为( )。

A.3

B.9

C.14

D.21


相似考题
更多“编写以下程序段:DIM I, J, K, AA=0FOR I = 1 TO 3 FOR J = 1 TO I FOR K=-J TO 3A=A+1 NEXT K NE ”相关问题
  • 第1题:

    下列程序段的执行结果为()。 K=0 For J=1 to 2 For I = 1 to 3 K =I+1 Next I For I = 1 to 7 K = K+1 Next I Next J Print K

    A. 6

    B. 10

    C. 11

    D. 16


    参考答案:C

  • 第2题:

    阅读下面的程序段: K=0 for I=1 to 3 for J=1 to I K=K+J Next J Next I 执行上面的语句后,K的值为______。

    A.8

    B.10

    C.14

    D.21


    正确答案:B
    解析:本题是两层嵌套循环,外面的循环执行一次,里面的循环就要全部都执行一次。初始时K=0当I=1时,里面循环要全部执行,有forJ=1to1;所以K=K+1,最后K值为1当I=2时,里面循环要全部执行,有forJ=1to2;所以K=K+1,K=K+2,最后K值为4当I=3时,里面循环要全部执行,有forJ=1to3;所以K=K+1,K=K+2,K=K+3,最后K值为10最后得到的K值为10

  • 第3题:

    当Form1_Click事件发生时,窗体上显示的第三行是( )。 Option Base 1 Private Sub Form_Click() Dim i As Integer,j As Integer Dim k As Integer,a(5,5)As Integer For i=1 To 5 k=1 For j=1 To 5 If i<=j Then a(i,j)=k k=k+1 Else a(i,j)=1 End If Next j Next i For i=1 To 5 For j=1 To 5 Print a(i,j); Next j Print Next i End Sub

    A.1 2 3 4 5

    B.1 1 2 3 4

    C.1 1 1 2 3

    D.1 1 1 1 2


    正确答案:C
    解析:本题首先定义了一个5行5列的数组,然后通过一个二重For循环给它的每个元素赋初值,赋值规律是左上右下对角线下面的元素值为1,该对角线上元素的值为1,该对角线上面的元素值在前一元素值的基础上增加1。接着通过一个两层For循环按行输出二维数组a,故输出的第三行为“11123”。

  • 第4题:

    阅读下列程序: Private Sub Command1_Click( ) Dim i As Integer,k As Integer k=2 For i=1 To 3 Print H(k); Next i End Sub Function H(j As Integer) a=0 Static b a=a+1 b=b+1 H=a*b+j End Function 程序运行后,单击命令按钮输出结果是

    A.234

    B.345

    C.567

    D.356


    正确答案:B
    解析:被调过程是一个函数过程,它有一个形式参数j,在被调过程声明中,定义了一个参数a,初值为0,一个静态变量b。语句a=a+1和b=b+1分别使用a和b各增加1,然后返回H的值,因为b是静态变量,所以每次调用同一个参数k时,b会保留前次的数值,使输出的结果变化,否则每次输出的结果都是一样的。根据分析,第一次调用时a=1,b=1,H=3;第二次调用:a=1,b=2,H=4;第三次调用:a=1,b=3=,H=5。所以最后的输出结果是345。

  • 第5题:

    假定有下面的程序段: For i=1 To 3 For j=1 To i For k=j To 3 Print"i=";i,"j=";j,"k=";k Next k Next j Next i 这是一个三重循环程序,在这个程序中,外层、中层和内层循环的循环次数是

    A.3、6和14

    B.3、8和16

    C.3、4和12

    D.3、9和18


    正确答案:A
    解析:本题主要考查多重循环的循环次数。在这个程序中外层循环由循环变量i控制,它只可以取3个值,故循环次数为 3。中层循环次数会受到外层循环的影响。 i=1时,中层执行1次;i=2时,中层执行2次;i=3时,中层执行3次;故中层循环一共执行了(1+2+3)次,即6次。内层循环次数会同时受到中层、外层变量的影响。 当i=1,j=1时,内层执行3次;当i=2,j=1时,内层执行3次;当i=2,j=2时,内层执行2次;当i=3,j=1时.内层执行3次;当i=3,j=2时,内层执行2次;当i=3,j=3时,内层执行1次;故内层循环的循环次数为(3+3+2+3+2+1)次,即14次。选项A正确。

  • 第6题:

    阅读下面的程序段: For i=1 To 3 For j=1 To i For k=j To 4 a=a+1 Next k Next j Next i 执行上面的三重循环后,a的值为( )。

    A.9

    B.14

    C.20

    D.21


    正确答案:C

  • 第7题:

    阅读下面的程序段:

    for i=1 to 3

    for j=i to 1

    for k=j to 3

    a=a+1

    next k

    next j

    next i

    执行上面的三重循环后,a的值为 【 】 。


    正确答案:14
    14 解析:题目程序应用三重嵌套循环,循环嵌套的执行,当外层循环执行一次,那层就要执行所有的循环。I=1时,j=1,k执行循环得到a的值为3:1=2,i=1时,k执行三次循环得到 a的值加上3并覆盖原值,j=2时,k执行两次循环a的值加上2;依次,1=3时,i执行3次,其中k分别执行3,2,1次,a的值分别加上3,2,1;最后得到a的值为14。

  • 第8题:

    下列程序执行后,执行的结果是______ 。 Dim M(2) For i = 1 To 2 M(i) = 0 Next i k=2 For i = 1 To k For j = 1 To k M(j) = M(i) + 1 Print M(k): Next j Next I

    A.1234

    B.0123

    C.223

    D.2345


    正确答案:C

  • 第9题:

    当Form_Click;事件发生时,窗体上显示的第三行是 ______。 Private Sub Form_Click() Dim i As Integer, j As Integer, k As Integer Dim x(5, 5) As Integer For i = 1 To 5 k = 1 For j = 1 To 5 If i <= j Then x(i, j) = k + 1 k=k+2 Else x(i, j) = k + 1 End If Next j Next i For i = 1 To 5 For j = 1 To 5 Print x(i, j) Next j Print Next i End Sub

    A.22135

    B.21357

    C.22213

    D.13579


    正确答案:A
    解析:程序首先通过一个双重循环二维数组x的各个元素赋值,通过计算不难得出二维数组各行的值:第一行:13579第二行:21357第三行:22135第四行:22213第五行:22221第三行的值为22135,因此本题选A。

  • 第10题:

    阅读下面的程序段: a==0 For i=1 To 3 For j=1 To i For k=j To 3 a=a+l Next k Next j Next i 执行上面的程序段后,a的值为( )。

    A.3

    B.9

    C.14

    D.21


    正确答案:C
    C。【解析】本题考查三重循环,当i=1时,j=1,则Fork=JTo3执行3次,所以a=3,当i=2时,Forj=IT01执行2次Fork=jT03执行3次,所以总共执行5次,所以此时a=3十5=8当i=3时,ForJ=1Toi执行{次,Fork=jT03执行3次,所以总共执行了6次,所以a=3+5+8=14次。

  • 第11题:

    当发生Form_Click事件时,窗体上显示的第三行是( )。 Option Base 1 Private Sub Form_Click() Dim i As Integer,j As Integer,k As Integer Dim a(5,5)As Integer For i=1 To 5 k=1 For i=1 To 5 If(i<=j)Then a(i,j)=k k=k+2 Else a(i,j)=k+1 End If Next j Next i For i=1 To 5 For j=1 To 5 Print a(i,j); Next j Print Next i End Sub

    A.1 3 5 7 9

    B.2 1 3 5 7

    C.2 2 2 1 3

    D.2 2 1 3 5


    正确答案:D
    解析:本题首先通过一个两层循环给5行5列的二维数组a的各个元素赋值,通过计算,不难得出二维数组各行的值。第一行的值为:13579:第二行的值为:21357;第三行的值为:22135;第四行的值为:22213;第五行的值为:22221。然后再通过一个双层循环按行输出该数组,所以输出的第三行为:22135。

  • 第12题:

    以下程序的输出结果是(). main()  {int  i,j,k,a=3,b=2;  i=(--a==b++)?--a:++b;  j=a++;k=b;  printf("i=%d,j=%d,k=%d/n",i,j,k);  }

    • A、i=2,j=1,k=3
    • B、i=1,j=1,k=2
    • C、i=4,j=2,k=4
    • D、i=1,j=1,k=3

    正确答案:D

  • 第13题:

    阅读下面的程序段:

    a==0

    For i=1 To 3

    For j=1 To i

    For k=j To 3

    a=a+l

    Next k

    Next j

    Next i

    执行上面的程序段后,a的值为( )。

    A.3

    B.9

    C.14

    D.21


    正确答案:C
    C。【解析】本题考查三重循环,当i=1时,j=1,则Fork=JTo3执行3次,所以a=3,当i=2时,Forj=IT01执行2次Fork=jT03执行3次,所以总共执行5次,所以此时a=3十5=8当i=3时,ForJ=1Toi执行{次,Fork=jT03执行3次,所以总共执行了6次,所以a=3+5+8=14次。

  • 第14题:

    下列程序段的执行结果为______。 K=0 For J = 1 To 2 For I = 1 To 3 K=I+1 Next I For I = 1 To 7 K=K+1 Next I Next J Print K

    A. 10

    B.6

    C.11

    D.16


    正确答案:C

  • 第15题:

    以下程序的输出结果是( )。 Option Base 1 Private Sub Command1_Click() Dim a(10),p(3) as Integer k=5 For I-1 to 10 a(i)=I Next I For j=1 to3 p(i)=a(I*j) Next j For I=l to 3 k=k+ p (I)*2 Next I Print k End Sub

    A.33

    B.28

    C.35

    D.37


    正确答案:A
    解析:此题中共定义了两个数组:a(0,p(0,共用到了3次For循环。第1个For语句对数组a(i)赋值,a(1)…a(10)=1...10:第2个For语句,对p(1):1,p(2):4,p(3):9;第3个For语句,计算k的值,3次循环分别得到:5,15, 33。答案为A。

  • 第16题:

    有以下程序: include main ( ){int x[ ] = {1,3,5,7,2,4,6,0} ,i,j,k;for(i =0;i<3;i

    有以下程序: #include <stdio. h> main ( ) { int x[ ] = {1,3,5,7,2,4,6,0} ,i,j,k; for(i =0;i<3;i ++ ) for (j =2;j> = i;j — ) if( x[j + 1 ] > x[j] ) { k = x[j] ;x[j] = x[j + 1 ] ;x[j + 1 ] = k; } for (i =0;i<3;i++) for(j =4;j <7-i;j ++) if(x[j] >x[j+1]){ k=x[j];x[j] =x[j+1];x[j+1] =k;} for (i=0;i<8;i ++) printf("%d" ,x[i]); prinff("\n" );}程序运行后的输出结果是( )。

    A.75310246

    B.1234567

    C.76310462

    D.13570246


    正确答案:A
    解析:本题考查的是排序算法。for(i=0;i3;i++)for(j=2;j>i;j--)if(x[j+1],x[j]){k=x[j];x[j];x[j+1);x[j+1]=k;}该段程序的作用是将数组元素x[0]~x[3]中的数由大到小排列,得到x[]{7,5,3,1,2,4,6,0}。for(i=0;i3;i++)for(j=4;j7-i;j++)if(x[j]>x[j+1]){k=x[j];x[j]=x[j+1];x[j+1]=k;}该段程序的作用是将数组元素x[4]~x[7]中的数由小到大排列,得到x[]={7,5,3,1,0,2,4,6}。因此输出结果为75310246。

  • 第17题:

    有以下程序 main() { int x[]={1,3,5,7,2,4,6,0},i,j,k; for(i=0;i<3;i++) for (j=2;j>=i;

    有以下程序

    main( )

    { int x[ ]={1,3,5,7,2,4,6,0},i,j,k;

    for(i=0;i<3;i++)

    for (j=2;j>=i;j--)

    if(x[j+1]>x[j]){ k=x[j];x[j]=x[j+1];x[j+1]=k;}

    for(i=0;i<3;i++)

    for(j=4;j<7-i;j++)

    if(x[j+1]>x[j]){ k=x[j];x[j]=x[j+1];x[j+1]=k;}

    for (i=0;i<3;i++)

    if(x[j]>x[j+1]){ k=x[j];x[j]=x[j+1];x[j+1]=k;}

    for (i=0;i<8;i++) printf("%d",x[i]);

    printf("\n");

    }

    程序运行后的输出结果是:

    A.75310246

    B.1234567

    C.76310462

    D.13570246


    正确答案:A
    解析:程序运行的输出结果是75310246。

  • 第18题:

    阅读下面的程序段: For i=1 To 3 For j=i To 3 For k= 1 To 3 a=a+i Next k Next j Next i 执行上面的3重循环后,a的值为

    A.3

    B.9

    C.14

    D.30


    正确答案:D
    解析:本题考查For循环的嵌套。对于多重For循环,解题的关键是确定循环的次数。本题的Forj循环初值是i变量,所以要考虑i数值变化对循环次数的影响。当For i循环执行 3次时,对应的For。i循环初值分别是1,2,3。所以本题的三重循环总共执行了18次。前9次,a值每次加1;中间6次,a值每次加2;最后3次,a值每次加3.故结果为30,答案为D。

  • 第19题:

    23 有如下程序段,该程序段循环的次数是______。 Dim i As Integer Dim j As Integer Dim k As Integer k=0 For i = 0 To 10 Step 3 For j = 1 To 5 If j > 3 Then k = k + 4: Exit For k=k+1 Print k Next j If i > 8 Then Exit For Next i

    A.9

    B.10

    C.11

    D.12


    正确答案:D

  • 第20题:

    下列程序的功能是:输入l0个整数。‘Private sub Command2_Click Dim i,j,k,temp,arr(11)As Integer Dimresult As String For k=1T0 10 arr(k)=Val(InputBox( “请输入第”&k&”个数:”,”数据输入窗口”)) Next k i=1 J=10 Do Temp=arr(i) arr(i)=arr(j) arr(j)=tempi=i+1 j=__________LoopWhileresule=””For k=1 To 10 result=result&arr(k)&Chr(13)Nextk MsgBoxresult End Sub 横线处应填写的内容是( )。

    A.J-i i<j

    B.j+1 i<j

    C.j+1 i>j

    D.J-1 i>j


    正确答案:A
    本题中第一个循环是将输入的数放进数组中,在第二个循环中进行逆序交换,a(1)是和a(10)进行交换,所以当i=i+1时,j=j-1,当i=5,j=5时,会停止循环,所以条件必须为i<j。

  • 第21题:

    假定有下面的程序段: For i=1 To 3 For j = 1 To i For k=j To 3 Print "i = ";i,"j=";i,"k =";k Next k Next j Next i 这是一个三重循环程序,在这个程序中,外层、中层和内层循环的循环次数是

    A.3、6和14

    B.3、8和16

    C.3、4和12

    D.3、9和18


    正确答案:A
    解析:在多重循环中,外层循环变化一次,内层循环从头到尾执行一遍。该题是一个三重循环,而且中层循环变量的终值和内层循环变量的初值是随上一层循环的循环变量变化而变化的,因此需要逐层加以计算后累加出各层的循环次数。模拟计算机的计算过程,计算各层的循环次数为:①外层循环:i=1To3,循环次数为3:②中层循环:由于i是中层循环的终值,当i=1、2、3时,其循环次数分别为1次、2次、3次,中层循环的循环总次数为6:③内层循环:由于j是内层循环的初值,j=1、1、2、1、2、3时,其循环次数分别为3次、3次、2次、3次、2次、1次,内层循环的循环总次数为14。

  • 第22题:

    以下程序的输出结果是( )。 Option Base 1 Private Sub Command1 Click() Dim a(10),p(3)as Integer k=5 For I=1 to 10 a(i)=I Next I For j=1 to 3 p(i)=a(I*j) Next j For I=1 to 3 k=k+p(I)*2 Next I Print k End Sub

    A.33

    B.28

    C.35

    D.37


    正确答案:A
    解析:此题中共定义了两个数组:a(i),p(i),共用到了3次For循环。第1个For语句对数组a(i)赋值,a(1)…a(10)=1…10;第2个For语句,对p(1)=1,p(2)=4,p(3)=9;第3个For语句,计算k的值,3次循环分别得到:5,15, 33。答案为A。

  • 第23题:

    下列程序段的执行结果为 ______。 Dim m(3,3)As Integer Dim i As Integer Dim j As Integer Dim K As Integer For i=1 To 3 m(i,i)=i Next For i=0 To 3 For j=0 To 3 x=x+m(i,j) Next Next Print x

    A.3

    B.4

    C.5

    D.6


    正确答案:D
    解析:通过第一个以i为循环变量的循环,令a(1,1)=1,a(2,2)=2,a(3,3)=3。然后通过双重循环,求数组a中所有元素的和并将结果赋值给x,由于在数组a中除了a(1,1)、a(2,2)和a(3,3)外其他元素都为0,所以 x=1+2+3=6。