参考答案和解析
正确答案:A
更多“以下程序的输出结果是 main() {inta,i;a=0; for(i=1;i<5;i++) {switch(i) {case0: case ”相关问题
  • 第1题:

    下列程序的输出结果是()。 include main() {int a=0,i; for(i=1;i<5;i++) {Switch(i){c

    下列程序的输出结果是( )。

    #include<stdio.h>

    main()

    {int a=0,i;

    for(i=1;i<5;i++)

    {Switch(i)

    {case 0:

    case 3:a+=1;

    case 1:

    case 2:a+=2;

    default:a+=3;

    }

    }

    printf("%d",a) :

    }

    A.19

    B.18

    C.6

    D.8


    正确答案:A
    解析:本题考查switch语句。当i=1时,执行casel,因为没有遇到break语句,所以依次往下运行,a=a+2=2,a=a+3=5;当i=2时,执行case2,因为没有遇到break语句,所以依次往下运行,a=a+2=7,a=a+3=10;当i=3时,执行case 3,a=a+1=11,因为没有遇到break语句,所以依次往下运行,a=a+2=13;a=a+3=16:当i=4时,执行default,a=a+3=19,结束循环。

  • 第2题:

    以下程序的输出结果是

    main( )

    { int a,i;a=0;

    for(i=1;i<5;i++)

    { switch(i)

    { case 0:

    case 3:a+=2;

    case 1:

    case 2:a+=3;

    default:a+=5;}

    }printf("%d\n",a);}

    A.31

    B.13

    C.10

    D.20


    正确答案:A
    解析:本题考查用于多分支选择的switch语句,其一般形式为:
      switch(表达式)
      {
       case常量表达式1:语句1;
       case常量表达式2:语句2;
       …
       case常量表达式n:语句n;
       default:语句n+1;
      }
      其语义是:计算表达式的值,并逐个与其后的常量表达式值进行比较,当表达式的值与某个常量表达式的值相等时,即执行其后的语句,然后不再进行判断,继续执行后面所有case后的语句;如表达式的值与所有case后的常量表达式均不相等时,则执行default后的语句。

  • 第3题:

    以下程序的输出结果是 main() { int a=0,i; for(i=1;i < 5;i++) { switch(i) { case 0: case 3:a+=2; case 1: case 2:a+=3; default:a+=5; } } printf("%dn",a); }

    A.31

    B.13

    C.10

    D.20


    B

  • 第4题:

    以下程序的输出结果是()。includemain(){int a,i;a=0; for(i=1;i<5;i++) {switch(i){ c

    以下程序的输出结果是( )。 #include <stdio.h> main() { int a,i;a=0; for(i=1;i<5;i++) { switch(i) { case 0: case 3:a+=2; case 1: case 2:a+=3; default:a+=5; } } printf("%d\n",a); }

    A.31

    B.13

    C.10

    D.20


    正确答案:A
    解析:多分支选择switch语句的一般形式为:switch(表达式){case常量表达式1:语句1;case常量表达式2:语句2;┆case常量表达式n:语句n;default:语句n+1;}其语义是:计算表达式的值,并逐个与其后的常量表达式值相比较,当表达式的值与某个常量表达式的值相等时,即执行其后的语句,不再进行判断,继续执行后面所有case后的语句。如果表达式的值与所有case后的常量表达式均不相同时,则执行default后的语句。

  • 第5题:

    以下程序的输出结果是 main() {int a=0,i; for(i=1;i<5;i++) {switch(i) {case 0: case 3:a+=2; case 1: case 2:a+=3; default:a+=5; } } cout<<a<<endl; }

    A.31

    B.13

    C.10

    D.20


    正确答案:A
    解析:本题也是考察switch语句中的break的作用,由于题中所有的case分支都没有break,故将顺序执行这些分支。只要考生耐心按照流程将数据累加到a上,就可以得到正确答案为A。