更多“下列程序的输出结果是______。main(){ int i=3;switch(i){case 1: case2:printf ("%d",i) case3: ”相关问题
  • 第1题:

    以下程序的输出结果是 main() { inta,i;a=0; for(i=1;i<5;i++) { switch(i) { case0: 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

  • 第2题:

    下列程序的输出结果是()。 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,结束循环。

  • 第3题:

    下列程序的输出结果是______。 main() { int i=3; switch(i) { case 1: case 2:printf("%d",i); case 3: case 4:break; default:printh("OK"; } }

    A.0

    B.3

    C.OK

    D.没有任何输出


    正确答案:D
    解析:在题中,i的值为3,由于“case3:”后面没有break语句,所以继续向下执行“case4:”后面的语句,由于“case4:”后面的语句为break强行退出switch语句,所以,本题没有任何输出。

  • 第4题:

    以下程序的输出结果是 main() { int a=0,i; for(i=1;i<5;i++) { switch(i) {case0: case3:a+=2; case 1: case2:a+=3; default:a+=5; } } printf(“%d\n”,A) ; }

    A.31

    B.13

    C.10

    D.20


    正确答案:A
    解析:switch语句的执行过程是:在switch后面的表达式的值和case后面常量表达式的值吻合时,就执行该case分支的语句。如果在该语句的后面没有break语句,则按顺序继续执行下一个case分支,直到遇到break语句或switch多分支语句结束,在switch语句中,break语句的作用是使流程跳出switch结构,终止switch语句的执行。在本题中,因为每个case语句后面都没有break语句,所以,第一轮循环(i==1)执行过后a的值为8,第2轮(i==2)执行过后a的值为16,第3轮(i==3)执行过后a的值为26,第4轮(i==4)执行过后a的值为31,然后执行“i++”语句,这时循环条件为假,循环结束。

  • 第5题:

    下列程序的输出结果是_______。 main() { int i=3; switch(i) { case1: case 2:printf("%d",i) case 3: case 4:break; default : printf("OK") } }

    A.0

    B.3

    C.OK

    D.没有任何输出


    正确答案:D
    解析:在题中,i的值为3,由于“case3:”后面没有break语句,所以继续向下执行“case4:”后面的语句,由于“case 4:”后面的语句为break强行退出switch语句,所以,本题没有任伺输出。