itgle.com
更多“ 请阅读以下程序:上面程序的输出结果是( )。A.a=2,b=1B.a=1,b=1C.a=1,b=0D.a=2,b=2 ”相关问题
  • 第1题:

    有如下程序main() { int x=1,a=0,b=0; switch(x) { case 0: b++; case 1: a++; case 2: a++;b++; } printf("a=%d,b=%d\n",a,b);}该程序的输出结果是A.a=2,b=1 B.a=1,b=1C.a=1,b=0 D.a=2,b=2


    正确答案:A
    C语言规定case后面跟的必须是整型常量表达式。进入case后,如果没有遇到break语句就会一直往下执行,后面其他case或default分支的语句也会被执行到,直到遇到break,或者执行到整个switch语句块的末尾。题目中给出了三个case语句:case 0、case 1、case 2。当x为1时,从case 1语句开始执行,因为没有break语句,将一直执行到函数末尾结束,即执行case 1、case 2两条语句。执行完case 1时,a=1,b=0;执行完case 2时,a=2,b=1。

  • 第2题:

    请阅读以下程序 main( ) { int x=1.y=0, a=0, b=0: switch(x) { case 1: switch(y) { case 0: a++; break; case 1: b++; break; } case 2: a++; b++; break; } cout<<"a="<<a<<"b="<<bend1; } 上面程序的输出结果是

    A.a=2, b=1

    B.a=1, b=1

    C.a=1. b=0

    D.a=2. b=2


    正确答案:A
    解析:本题考察switch语句的嵌套,以及break语句的使用规则,即break中断当前的执行流,不再执行下面的case语句,如果没有break语句,则会顺序执行随后语句。据此,读程序可知,内层switch执行case 0分支,故a增l,调出内层switch后,由于没有break语句,随后执行外层 switch的case 2分支,a又增1,b增1。故答案为A。

  • 第3题:

    以下程序段的输出结果是() int x=1,a=0,b=0; switch(x) {case 0:b++; case 1:a++; case 2:a++;b++; } printf("a=%d,b=%dn",a,b);

    A.a=2,b=1

    B.a=1,b=1

    C.a=1,b=0

    D.a=2,b=2


    C

  • 第4题:

    有如下程序: #include"iostream.h" void main() { int x=1,a=0,b=0; switch(x){ case 0:b++; case 1:a++; case 2:a++;b++; } cout << "a=" <<a << " ," <<"b=" << b; } 该程序的输出结果是

    A.a=2,b=1

    B.a=1,b=1

    C.a=1,b=0

    D.a=2,b=2


    正确答案:A
    解析:该题目的关键是要搞清楚该程序执行了哪几条语句。由于x的值等于1,所以switch结构中,程序从case1后面的语句开始执行,又因为casel后面的语句没有以break结束,所以程序要继续往下执行case2后面的语句所以,该程序共执行了这三条语句:9++;a++;b++;.因此,变量a和b最后的值应该为2和1。注意:break语句可以结束switch语句。

  • 第5题:

    请阅读以下程序:includemain(){ int x=1,y=0,a=0,b=0;switch(x){ case 1:switch(y){ c

    请阅读以下程序: #include<stdio.h> main() { int x=1,y=0,a=0,b=0; switch(x) { case 1: switch(y) { case 0:a++;break; case 2: a++,b++;break;} printf("a=%d,b=%d\n" ,a,b); 上面程序的输出结果是( )。

    A.a=2,b=1

    B.a=1,b=1

    C.a=1,b=0

    D.a=2,b=2


    正确答案:A
    解析:switch语句的执行过程为:进入switch结构后,对条件表达式进行运算,然后从上至下去找与条件表达式值相匹配的case,以此作为入口,执行switch结构中后面的各语句,直到遇到break语句,则跳出switch语句,如果各case都不匹配时则执行default后面的语句。注意:if语句及if嵌套语句的使用。