执行下列程序段后输出的结果是( )。s = 1For i = 1 To 3For j = 0 To i-1s = s + s * jNext j? s;Next IA、 1 2B、 2 1C、 2 2 12D、 1 2 12

题目

执行下列程序段后输出的结果是( )。

s = 1

For i = 1 To 3

For j = 0 To i-1

s = s + s * j

Next j

? s;

Next I

A、 1 2

B、 2 1

C、 2 2 12

D、 1 2 12


相似考题
更多“执行下列程序段后输出的结果是( )。s = 1For i = 1 To 3For j = 0 To i-1s = s + s * jNex ”相关问题
  • 第1题:

    若有以下程序main(){ int a[4][4]={{1,2,-3,-4},{0,-12,-13,14},{-21,23,0,-24},{-31,32,-33,0}}; int i,j,s=0; for(i=0;i<4;i++) { for(j=0;j<4;j++) { if(a[i][j]<0) continue; if(a[i][j]==0) break; s +=a[i][j]; } } printf("%d\n",s);}程序执行后的输出结果是


    正确答案:58
    在本题程序中,首先定义了一个4*4的二维数组a,并进行了初始化操作,然后定义了三个整型变量,i和j分别作为循环变量,而s作用一个记录和的变量被初始化为0。然后开始循环,第一层循环的循环变量i被初始化为0,循环结束条件是i<4,即循环执行四次,而第二层循环同样是4次,总循环此时为4´4=16次,如果逐次循环分析,工作量和花费时间太多,且一不小心容易出错,这种情况下,我们应该找出一个更简便的方法。
    从循环体中的if(a[i][j]<0) continue;我们可以知道,只要数组元素小于0,结束本次循环,即不参与求和运算,由if(a[i][j]==0) break;我们可以知道,只要数组元素等于0,结束本层循环,即同一行的数组元素都不用参加求和运算,从数组a的初始化情况我们可以看到,在第二行的第一个元素为0,即第二行都不参加求和运算,而第三行的第三个元素为0,即该行最后一个元素不参加求和运算。这样,参与求和运算的数组元素必须满足大于0,且其前面的该行元素无0出现。由此可以知道,变量s的最后结果应该为1+2+23+32=58。因此,程序最后的输出结果为58。

  • 第2题:

    执行完以下程序段后,s的值为(). int i,j,s; for(i=1;i<=3;i++) { s=0; for(j=1;j<=2;j++) s=s+j; }


    45

  • 第3题:

    执行完下面程序段后,s的结果是() int a[]={1,2,3,4},i,s; s=a[0]; for(i=1;i<=3;i++) if(s<a[i]) s=a[i];


    死循环

  • 第4题:

    下列程序运行后的输出结果是( )。 public class Sun { public static void main(String args[]) { int i,j,s; s=0; for(i=1;i<=3;i++) for(j=0;j<=i-1;j++) s=s+1; System.out.println(s); } }

    A.6

    B.5

    C.4

    D.3


    正确答案:A
    解析:本题考查对for循环语句理解。第1重for循环共有3次,第2重for循环共有2次,所以总共执行6次循环,每次循环s的值加1,因此s=6。故本题答案是A。

  • 第5题:

    int a[]={1,2,3,4},i,j,s=0; j=1; for(i=3;i>=0;i--) { s=s+a[i]*j; j=j*10; } 执行上述程序段后,s的值是


    A 解析:考查副词辨义。still仍然;also也,还;already已经;always总是,一直。由于句子状语是today,说明的是一种仍在进行的状态,故选still。

  • 第6题:

    13、有如下程序段: int a[3][3]={{1,2},{3,4},{5,6}},i,j,s=0; for(i=1;i<3;i++) for(j=0;j<i;j++) s+=a[i][j]; printf(“%d\n”,s); 该程序段的输出结果是()。

    A.14

    B.18

    C.20

    D.21


    错误