下面代码输出结果是( )。inti=0,s=0;do{if(i%2==0){i++;continue;}i++;s=s+i;}while(i下面代码输出结果是( )。inti=0,s=0;do{if(i%2==0){i++;continue;}i++;s=s+i;}while(iSystem.out.println(s);A、16B、12C、28D、21

题目
下面代码输出结果是( )。inti=0,s=0;do{if(i%2==0){i++;continue;}i++;s=s+i;}while(i<7);

下面代码输出结果是( )。

inti=0,s=0;

do{

if(i%2==0){

i++;

continue;

}

i++;

s=s+i;

}while(i<7);

System.out.println(s);

A、16

B、12

C、28

D、21


相似考题
更多“下面代码输出结果是( )。inti=0,s=0;do{if(i%2==0){i++;continue;}i++;s=s+i;}while(i<7); ”相关问题
  • 第1题:

    下列程序段的时间复杂度为()。i=0,s=0;while(sn){s=s+i;i++;}

    A、O(n1/2)

    B、O(n1/3)

    C、O(n)

    D、O(n2)


    参考答案:A

  • 第2题:

    有以下程序:include main ( ){ inti=0.s=0;for(;;) if( i = = 3 ‖ i = = 5 ) continu

    有以下程序: #include <stdio. h> main ( ) { inti=0.s=0; for(;;) if( i = = 3 ‖ i = = 5 ) continue; if (i ==6) break; i++; s+ =i; } printf(" % d \n" ,s);程序运行后的输出结果是( )。

    A.10

    B.13

    C.21

    D.程序进入列循环


    正确答案:D
    解析:程序第1次执行for循环时,i=0,两条if语句中的表达式都不成立,执行i++;s+=i;此时i为1,s为1第2次循环,两条if语句中的表达式也不成立,执行i++,s+=i,此时i为2,s为3;……;当i=3时,执行continue,结束本轮循环,不执行i++;继续执行下一轮循环,这样一来i值始终为3,继续continue,无终止条件,进入死循环。

  • 第3题:

    下列程序的运行结果是______。

    main()

    { int s=0,i=1;

    while(s<= 10)

    { s=s+i*i;

    i++;

    }

    printf("%d",-i);

    }


    正确答案:3
    3 解析:分析程序运行过程,第1次循环:s=s+i*i=0+1*1=1,i=2;第2次循环:s=s+i*i=1+2*2=5,i=3;第3次循环:s=s+i*i=5+3*3=14, i=4;循环条件不成立输出i,--i使i的值减1,轴出结果为3。

  • 第4题:

    设有定义“chars[8];inti=0;”,下列不能将一行(不超过80个字符)带有空格的字符国正确读入的语句或语句组是( )。

    A.gets(s);

    B.while((s[i++]=getchar( ))!=\n);s[i]=\0;

    C.seanf("%S",s);

    D.do{scanf("%C",&s[i]);}while(s[i++]!=\n);s[i]=\0;


    正确答案:C
    C。【解析】在scanf输入函数中,格式字符s的作用是输入一个字符串,直到遇到空格结束。所以选项C不能输入包含空格的字符串。正确答案为选项C。

  • 第5题:

    有以下程序main( ){ int i=0,s=0;do{ if(i%2) {i+ +; continue; } i++; s+=i;}while(i<7)cout<<s<<end1;}执行后输出结果是

    A.16

    B.12

    C.28

    D.21


    正确答案:A
    解析:本题考察continue语句在while循环中的使用:直接跳转到条件判断表达式位置,不再执行continue后面的语句。另外,根据分析可知,本题循环体的功能是将0,2,4,6位元素加一后累加,故结果应是1+3+5+7,因此正确答案为A。

  • 第6题:

    有以下程序

    main( )

    { int i=0,s=0;

    do{

    if (i%2){i++;continue;}

    i++;

    s+=i;

    }while(i<7);

    cout<<s<<endl;

    }

    执行后输出结果是

    A.16

    B.12

    C.28

    D.21


    正确答案:A
    解析:本题考察continue语句在while循环中的使用:直接跳转到条件判断表达式位置,不再执行continue后面的语句。另外,根据分析可知,本题循环体的功能是将0,2,4,6位元素加一后累加,故结果应是1+3+5+7,因此正确答案为A。

  • 第7题:

    以下程序的输出结果为( )。

    main( )

    { char s1[40]="country",s2[20]="side";

    int i=0,j=0;

    while(s1[i]!='\0') i++;

    while(s2[j]!='\0') s1[i++]=s2[j++];

    s1[i]=0;

    printf("%s\n",s1);

    }

    A side

    B country

    C sidetry

    D countryside


    正确答案:D

  • 第8题:

    下列程序的运行结果是() classProgramx=0,y=-1; { publicstaticvoidMain(string[]args) { int i=0,s=1; do{s/=s+1;i++; } while(i<=10); Console.WriteLine(“i={0},s={1}”,i,s);


    正确答案:i=11,s=12

  • 第9题:

    以下能正确计算1×2×3×…×10的程序段是()。

    • A、do{i=1;s=1;
    • B、do{i=1;s=0;s=s*i;s=s*i;i++;i++;}while(i<=10);}while(i<=10);
    • C、i=1;s=1;
    • D、i=1;s=0;do{s=s*i;do{s=s*i;i++;i++;}while(i<=10);}while(i<=10);

    正确答案:C

  • 第10题:

    下列语句中与语句while(1){if(i>=100)break;s+=i;i++;}功能相同的是()。

    • A、for(;i<100;i++)s=s+i;
    • B、for(;i<100;i++;s=s+i);
    • C、for(;i<=100;i++)s+=i;
    • D、for(;i>=100;i++;s=s+i);

    正确答案:A

  • 第11题:

    填空题
    下列程序的运行结果是() classProgramx=0,y=-1; { publicstaticvoidMain(string[]args) { int i=0,s=1; do{s/=s+1;i++; } while(i<=10); Console.WriteLine(“i={0},s={1}”,i,s);

    正确答案: i=11,s=12
    解析: 暂无解析

  • 第12题:

    单选题
    在下面循环语句中循环体执行的次数为()。inti=0,s=0;while(s<20){i++;s+=i;}
    A

    4

    B

    5

    C

    6

    D

    7


    正确答案: C
    解析: 暂无解析

  • 第13题:

    下列语句段中不是死循环的是()。

    A、intI=100;while(1){I=I0+1;if(I=20)break;}

    B、intI;sum=0;for(I=1;;I++)sum=sum+1;

    C、intk=0;do{++k;}while(k>=0);

    D、ints=3379;while(s++%2+3%2)s++;


    参考答案:A

  • 第14题:

    有如下程序 #include(iostream.h> voidmain( ) {charch[2][5]={"6937","8254"),*p[2]; inti,j,s=0; for(i=0;i<2;i++)p[i]=ch[i]; for(i=0;i<2;i++) for(j=0;p[i][j])\0;j+=2) s=10*s+p[i][j]一0; cout<<S;} 该程序的输出结果是( )。

    A.69825

    B.63825

    C.6385

    D.693825


    正确答案:C
    C。【解析】该题主要要搞清楚以下几点:①定义了一个指针数组char*p[2]后,程序中第一个循环“for(i=0;i(2;i++)p[i]=ch[i]”的作用是使指针数组的p[0]元素(它本身是一个指针)指向了二维数组ch的第一行字符串,并使指针数组的p[1]元素指向了二维数组ch的第二行字符串,这样,就使指针数组P和二维数组ch建立起了一种对应关系,以后对二维数组ch的某个元素的引用就有两种等价的形式:ch[i][j]或p[i][j]。②对二维数组ch的初始化,使其第一行ch[0]中存入了字符串“6937”,第二行ch[1]中的内容为字符串“8254”。③程序中第二个循环中的循环体“s=s*10+p[i][j]-0”的功能是这样的,每执行一次,将s中的值乘以10(即将s中的数值整体向左移动一位,并在空出来的个位上添一个0),再将当前p[i][j]中的字符量转换为相应的数字,然后把这个数字加到s的个位上。④注意到内层循环的循环条件p[i][3]>\0是指p[i][j]中的字符只要不是字符串结束标志\0就继续循环,语句j+=2;是使下标j每次增加2,即一个隔一个地从p[i]所指向的字符串中取出字符。经过上述解析后,不难看出,该程序首先从p[0]所指向的字符串“6937”中一个隔一个地取出字符,分别是“6”和“3”,然后从p[1]所指向的字符串“8254”中一个隔一个地取出字符,分别是“8”和“5”,同时经过转换和相加运算后,结果s中的值应该是6385。

  • 第15题:

    下面代码输出结果是()。inti=0,s=0;do{if(i%2==0){i++;continue;}i++;s=s+i;}while(i<7);System.out.println(s);

    A、16

    B、12

    C、28

    D、21


    正确答案:B

  • 第16题:

    以下程序的输出结果是intf(){ static int i= 0; int s=1; s+=i; i++; return s;}main( ){ inti, a=0; for(i=0;i<5;i++)a+=f(); cout<<a<<end1;}

    A.20

    B.24

    C.25

    D.15


    正确答案:D
    解析:本题考察的是同名局部变量和全局变量的作用域之间的关系。同时考察了静态变量的特点:退出函数和进入函数并不影响静态变量的值。因此,循环多次,实际上完成静态变量的累加。即1+2+3+4+5,其值为15,故答案为D。

  • 第17题:

    有如下程序:include<iostream.h>voidmain(){charch[2][5]={"6937","8254&q

    有如下程序:

    include<iostream.h>

    voidmain()

    {charch[2][5]={"6937","8254"),*p[2];

    inti,j,s=0;

    for(i=0;i(2;i++)p[i]=ch[i];

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

    for(j=0;p[i][j]>\0;j+=2)

    s=10*s+p[i][j]-0;

    cout<<s;}

    该程序的输出结果是( )。

    A.69825

    B.63825

    C.6385

    D.693825


    正确答案:C

    C。【解析】该题需要搞清楚以下几点:④定义了一个指针数组char*p[2]后,程序中第一个循环“for(i=0;i(2;i++)p[i]=ch[i]”的作用是使指针数组的p[0]元素(它本身是一个指针)指向了二维数组ch的第一行字符串,并使指针数组的p[1]元素指向了二维数组ch的第二行字符串,这样,就使指针数组P和二维数组ch建立起了一种对应关系,以后对二维数组ch的某个元素的引用就有两种等价的形式:ch[i][j]或p[i][j]。②对二维数组ch的初始化,使其第一行ch[0]中存入了字符串“6937”,第二行ch[1]中的内容为字符串“8254”。③程序中第二个循环中的循环体“s=s*10+p[i][j]-0”的功能是这样的,每执行一次,将s中的值乘以10(即将s中的数值整体向左移动一位,并在空出来的个位上添一个0),再将当前p[i][i]中的字符量转换为相应的数字,然后把这个数字加到s的个位上。④注意到内层循环的循环条件p[i][j]>\0是指p[i][j]中的字符只要不是字符串结束标志\0就继续循环,语句j+=2;是使下标j每次增加2,即一个隔一个地从p[i]所指向的字符串中取出字符。经过上述解析后,不难看出,该程序首先从p[0]所指向的字符串“6937”中一个隔一个地取出字符,分别是“6”和“3”,然后从p[1]所指向的字符串“8254”中一个隔一个地取出字符,分别是“8”和“5”,同时经过转换和相加运算后,结果s中的值应该是6385。

  • 第18题:

    下面程序片段输出的是( )。inti=0,j=9;do{if(i++>--j)break;}while(i<4);System.out.print

    下面程序片段输出的是( )。

    inti=0,j=9;

    do{

    if(i++>--j)

    break;

    }while(i<4);

    System.out.println("i="+i+"andj="+j);

    A、i=4andj=4

    B、i=5andj=5

    C、i=5andj=4

    D、i=4andj=5


    正确答案:D

  • 第19题:

    在下面循环语句中循环体执行的次数为()。inti=0,s=0;while(s<20){i++;s+=i;}

    • A、4
    • B、5
    • C、6
    • D、7

    正确答案:C

  • 第20题:

    设有定义:chara[80];inti=0;,以下不能将一行带有空格的字符串(不超过80个字符)正确读入的是()

    • A、gets(a);
    • B、while((a[i++]=getchar())!=’/n’);a[i]=’/0’;
    • C、scanf("%s",a);
    • D、do{scanf("%c",&a[i]);}while(a[i++]!=’/n’);a[i]=’/0’;

    正确答案:C

  • 第21题:

    求整数1至10的和并存入变量s,下列语句中错误的是()。

    • A、s=0;for(i=1;i<=10;i++)s+=i;
    • B、s=0;i=1;for(;i<=10;i++)s=s+i;
    • C、for(i=1,s=0;i<=10;s+=i,i=i+1);
    • D、for(i=1;s=0;i<=10;i++)s=s+i;

    正确答案:D

  • 第22题:

    若变量已正确定义,以下不能正确计算1+2+3+4+5的程序段是()。

    • A、i=1;s=1;do{s=s+i;i++;}while(i<5);
    • B、i=0;s=0;do{i++;s=s+i;}while(i<5);
    • C、i=1;s=0;do{s=s+i;i++;}while(i<6);
    • D、i=1;s=0;do{s=s+i;i++;}while(i<=5);

    正确答案:B

  • 第23题:

    单选题
    有以下程序 #include  main() {  char c[2][5]={6938,8254},*p[2];  int i,j,s=0;  for(i=0;i<2;i++)   p[i]=c[i];  for(i=0;i<2;i++)   for(j=0;p[i][j]>0;j+=2)    s=10*s+p[i][j]-'0';  printf(%d,s); } 程序运行后的输出结果是(  )。
    A

    9284

    B

    9824

    C

    6982

    D

    6385


    正确答案: D
    解析:
    p定义了两个字符串指针,p[0]指向c[0],p[1]指向c[1]。所以,p[i][j]等价于c[i][j],s = 10*s+ p[i][j]- '0',作用是把字符串p[i]转化成10进制数,注意到内层循环中j+=2,结果取c[0]中的第0个,第2个元素,取c[1]中的第0个,第2个元素。i=0时,输出63;i=1时,输出85。答案选择D选项。