参考答案和解析
正确答案: B
解析:
“for(k=2;k==0;)”表示给k赋值2,如果k等于0,则进入循环,但是k不满足条件,因此循环体不执行。答案选择A选项。
更多“有如下程序段:int k;for(k=2;k==0;) printf(%d,k--);则for循环体执行的次数是(  )”相关问题
  • 第1题:

    有以下程序 main() { int k=5,n=0; do { switch(k) { case 1: case 3:n+=1;k--;break; default:n=0;k--; case 2: case 4:n+=2;k--;break; } printf("%d",n); }while(k>0&&n<5); } 程序运行后的输出结果是

    A.235

    B.235

    C.2356

    D.2356


    正确答案:A
    解析:因为变量的初始值分别为“k=5,n =0”,所以程序第一次进入循环时,执行default语句,这时k=4,执行"case 4:”这个分支,结果是“n=2,k= 3”,打印出2;程序然后进行第二次循环,这时“n=2,k =3”,执行"case 3:”这个分支,结果是“n=3,k=2”,打印出3;程序进行第三次循环,这时“n=3,k=2”,执行“case 2:case 4:”这两个分支,结果是“n=5,k=1”,打印出5,这时因为n=5不满足n5的循环条件,因此退出循环,程序运行结束。因此输出结果是235。

  • 第2题:

    下面程序段的循环次数是()intk=2;while(k==0)printf(″%d″,k);k--;printf(″\n″);

    A.0次

    B.1次

    C.2次

    D.无限次


    正确答案:A

  • 第3题:

    若k为整形,则while循环执行()次。k=2;while(k==0)printf(“%d”,k);k--;printf(“\n”);

    A、10

    B、9

    C、0

    D、1


    参考答案:C

  • 第4题:

    下面程序段 int k=2; while (k==0) {printf(“%d”,k);k--;} 则下面描述中正确的是()。

    A. while 循环执行 10 次

    B. 循环是无限循环

    C. 循环体语句一次也不执行

    D. 循环体语句执行一次


    正确答案:C

  • 第5题:

    有如下程序: main() { int k=4, n=0; for(; n<k; ) { n++; if(n% 3!=0)continue; k--; } printf(" % d, % d\n", k, n); 程序运行后的输出结果是______。

    A.1, 1

    B.2, 2

    C.3, 3

    D.4, 4


    正确答案:C
    解析:continue语句是结束本次循环。
      for循环语句的执行过程为:
      第1次循环:循环前n=0,执行n++得n=1,n%3!=0成立,执行continue语句结束本次循环,k=4;
      第2次循环:循环前n=1,执行n++得n=2,n%3!=0成立,执行continue语句结束本次循环,k=4;
      第3次循环;循环前n=2,执行n++得n=3,n%3!=0不成立,执行语句k--得k=3;nk不成立,结束整个for循环。
      所以执行完for循环后k=3、n=3,正确答案为选项C。

  • 第6题:

    有以下程序includemain(){int k=5,n=0;while(k>0){switch(k){defhult:break;case 1:n+

    有以下程序 #include<stdio.h> main() {int k=5,n=0; while(k>0) {switch(k) {defhult:break; case 1:n+=k: case 2: case 3:n+=k; } k--; } printf("%d\n",n); } 程序运行后的输出结果是( )

    A.0

    B.4

    C.6

    D.7


    正确答案:D
    解析:因为没有break语句,当k=2的时候,会顺序执行两条语句,k=1的时候,会顺序执行3条语句。

  • 第7题:

    有下列程序段:int k=0,a=1,b=2,c=3;k=ac?C:k;执行该程序段后,k的值是()。A.3B.2C.1D.0

    有下列程序段: int k=0,a=1,b=2,c=3; k=a<b?b:a;k=k>c?C:k; 执行该程序段后,k的值是( )。

    A.3

    B.2

    C.1

    D.0


    正确答案:B
    解析: 因为ab成立,所以条件表达式ab?b:a的值等于b的值等于2,因此变量k的值等于2。又因为k=2>c=3不成立,所以条件表达式k>c?c:k的值等于k的值等于2。把条件表达式k>c?c:k的值赋给变量k,因而变量k的值等于2。因此,选项B)为正确答案。

  • 第8题:

    有下列程序段: int k=0,a=1,b=2,c=3; k=aC?C:k; 执行该程序段后,k的值是()。A.3B.2C.1

    有下列程序段:

    int k=0,a=1,b=2,c=3;

    k=a<b?b:a;k=k>C?C:k;

    执行该程序段后,k的值是( )。

    A.3

    B.2

    C.1

    D.0


    正确答案:B
    解析:因为ab成立,所以条件表达式ab?b:a的值等于b的值等于2,因此变量k的值等于2。又因为 k=2>c=3不成立,所以条件表达式k>c?c:k的值等于k的值等于2。把条件表达式k>c?c:k的值赋给变量k,因而变量k的值等于2。因此,选项B)为正确答案。

  • 第9题:

    有以下程序: include main ( ) {int k=5,n =0; while ( k>0){switch (k) {default: b

    有以下程序: #include <stdio, h>main ( ) { int k=5,n =0; while ( k>0) { switch (k) { default: break; case 1 : n+ =k; case 2 : case3 : n+ =k; } k--; printf( "% d \n" ,n);}程序运行后的输出结果是( )。

    A.0

    B.4

    C.6

    D.7


    正确答案:D
    解析:在程序中,当L的值为5和4时,case都没有与其匹配的值,所以执行default语句;当k=3时,执行n+=k;得n=3;当L=2时,执行case2:然后顺序执行case3:n+=k;得n=5;当k=1时,执行case1:n+=k;得n=6,然后顺序执行case2:和case3:n+=k;使得n=7。

  • 第10题:

    对于以下程序,   main( )  { int a[5],*p;    int k;    for(k=0,p=a;k<5;k++,p++)     scanf(“%d”,p);    for(;k>0;k--)     printf(“%d”,*(--p));  }  若输入为:1 2 3 4 5(注:表示回车),则输出结果是多少?


    正确答案:输出结果是54321

  • 第11题:

    程序段int k=10; while(k=0) k=k-1循环体语句执行()次.


    正确答案:0

  • 第12题:

    单选题
    程序段如下   int k=1    while(!k= =O){k=k+1;printf(“%d\n”,k);}    说法正确的是()
    A

    while循环执行2次

    B

    循环是无限循环

    C

    循环体语句一次也不执行

    D

    循环体语句执行一次


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

  • 第13题:

    有以下程序片段int k=5;while(k=1)k--;执行此程序片段,则描述正确的是( )

    A.while循环执行4次

    B.循环体执行一次

    C.循环体一次也不执行

    D.死循环


    正确答案:D 

  • 第14题:

    若k为整型变量,则以下for循环的执行次数是( )。 for (k=2; k==0; ) printf("%d",k--);

    A.无限次

    B.0次

    C.1次

    D.2次


    参考答案B

  • 第15题:

    有下列程序段:int k=0,a=1,b=2,c=3;k=ac?c:k;执行该程序段后,k的值是()。A.3B.2C.1D.

    有下列程序段: int k=0,a=1,b=2,c=3; k=a<b?b:a; k=k>c?c:k; 执行该程序段后,k的值是( )。

    A.3

    B.2

    C.1

    D.0


    正确答案:B
    解析:因为ab成立,所以条件表达式ab?b:a的值等于b的值等于2,因此变量k的值等于2。又因为k=2>c=3不成立,所以条件表达式k>c?e:k的值等于k的值等于2。把条件表达式k>c?e:k的值赋给变量k,因而变量k的值等于2。因此,选项B)为正确答案。

  • 第16题:

    有以下程序段:int k=0, a=1, b=2, c=3;k=ac? c:k;执行该程序后,k的值是______。A.3B

    有以下程序段: int k=0, a=1, b=2, c=3; k=a<b? b:a; k=k>c? c:k; 执行该程序后,k的值是______。

    A.3

    B.2

    C.1

    D.0


    正确答案:B
    解析:第一个表达式得到k=2,对于第二个表达式,因为k=23,k仍然赋值为k。因此最后k值为2。

  • 第17题:

    有以下程序段: int k=0,a=1,b=2,c=3; k=ac?c:k; 执行该程序段后,k的值是

    有以下程序段: int k=0,a=1,b=2,c=3; k=a<b?b:a; k=k>c?c:k; 执行该程序段后,k的值是 ______。

    A.3

    B.2

    C.1

    D.0


    正确答案:B
    解析:三目运算符的一般形式为(表达式1)?(表达式2):(表达式3),当(表达式1)值为真时,(表达式2)的值为整个表达式的值;当(表达式1)值为假时,(表达式3)的值为整个表达式的值。题中执行表达式“k=ab?b:a”后,k=2,将此值代入后一个表达式“k=k>c?c:k,由于“k>c”值为假,故k的值还等于原来k的值,即2。

  • 第18题:

    有下列程序: main { int k=5,n=0; while(k>0) {switch(k) {dcfault:break; case 1:n=n+k; case 2: case 3:n+=k; } k--; } printf("%d\n".n); } 程序运行后的输出结果足( )。

    A.0

    B.4

    C.6

    D.7


    正确答案:D
    本题主要考查while循环语句和switchcase语句的使用方法。其执行步骤为:k=5时,跳出switch语句,然后k自减1;当k=4时,跳出switch语句,然后k自减1;当k=3时,n=13+k=0+3=3,跳出switch语句,然后k自减1;当k=2时n=n+k=3+2=5,跳出switch语句,然后k自减l;当k=1时,case1:n=n+k一5+1=6,没有break继续执行CaSe3;n=n+k=6+1=7,跳出switch语句,然后k自减1;当k=0时,退出循环,所以输出结果为7。

  • 第19题:

    有下列程序: main() {int k=5,n=0; do {switch(k) {case 1: case 3:n+=1;k--;break; default:n=0;k--; case 2: case 4;n+=2;k--;break; } printf("%d",n); }while(k>O&&n<5); } 程序运行后的输出结果是( )。

    A.235

    B.0235

    C.02356

    D.2356


    正确答案:B
    解析: 因为变量的初始值分别为k=5,n=0,所以程序第1次进入循环时,执行default语句,输出0,k减1;这时n=0,k=4,程序进行第2次循环,执行case 4:这个分支,结果是n=2,k=3,打印出2;这时n=2,k=-3,程序进行第3次循环,执行case 3:这个分支,结果是n=3,k=2,打印出3;这时n=3,k=2,程序然后进行第 4次循环,执行case 2:case 4:这个分支,结果是n=5,k=1,打印出5,这时因为n=5不满足n5的循环条件,因此退出循环,程序运行结束。所以在屏幕上打印

  • 第20题:

    有以下程序段:int k=0,a=1,b=2,c=3;k=ac ? c:k;执行该程序段后,k的值是()。A.3B.2C

    有以下程序段: int k=0,a=1,b=2,c=3; k=a<b ? b:a; k=k>c ? c:k; 执行该程序段后,k的值是( )。

    A.3

    B.2

    C.1

    D.0


    正确答案:B
    解析:本题中因为ab为“真”,所以第1个条件表达式的值为b的值2,所以k=2。然后又因为k>c为“假”,所以第2个表达式的值为k的值2。所以本题应该选择B。

  • 第21题:

    程序段如下intk=1;while(!k==0){k=k+1;printf("%d\n",k);}说法正确的是()。

    A.while循环执行2次

    B.循环是无限循环

    C.循环体语句一次也不执行

    D.循环体语句执行一次


    正确答案:B

  • 第22题:

    程序段如下   int k=1    while(!k= =O){k=k+1;printf(“%d\n”,k);}    说法正确的是()

    • A、while循环执行2次
    • B、循环是无限循环
    • C、循环体语句一次也不执行
    • D、循环体语句执行一次

    正确答案:B

  • 第23题:

    问答题
    对于以下程序,   main( )  { int a[5],*p;    int k;    for(k=0,p=a;k0;k--)     printf(“%d”,*(--p));  }  若输入为:1 2 3 4 5(注:表示回车),则输出结果是多少?

    正确答案: 输出结果是54321
    解析: 暂无解析