若有inta=2;执行下列语句后a的值为()switch(a){case1:a++;case2:a;case3:++a;break;case4:--a;default:a++;}
举一反三
- 若有定义语句int a, b;double x;则下列选项中正确的是( ). A: switch(x%2) { case 0: a++; break; case 1: b++; break; default : a++; b++; } B: switch((int)x/2.0) { case 1: b++; break; case 0: a++; break; default : a++; b++; } C: switch((int)x%2) { case 0: a++; break; case 1: b++; break; default : a++; b++; } D: switch((int)(x)%2) { case 0.0: a++; break; case 1.0: b++; break; default : a++; b++; }
- 以下选项中与if(a==1) a=b;else a++;语句功能不同的switch语句是( )。(a == 1 中的符号是恒等于) A: switch(a==1) {case 0: a=b;break; case 1:a++;} B: switch(a) {case 1: a=b;break; default:a++;} C: switch(a) {default:a++;break; case 1: a=b;} D: switch(a==1) {case 1: a=b;break; case 0:a++;}
- 若有以下定义: float x;int a,b;则正确的switch 语句是 A: switch(x){case 1:a++;case 2:b++;} B: switch(x){case 1,2:a++;case 2:b++;} C: switch(a+b){case 1,2:a++;case 2:b++;} D: switch(a+b){case 1:a++;case 2:b++;}
- #include main() {int x=1,y=0,a=0,b=0; switch(x) {case 1: switch(y) {case 0:a++;break; case1:b++;break;} case 2:a++;b++;break; case 3:a++;b++;break; default:a++;b++;} printf(“a=%d,b=%d”,a,b);} A.a=1,b=0 B.a=2,b=1 C.a=1,b=1 D.a=2,b=2 以上程序的输出是
- The switch statement with different functions from the statement if (a == 1) a = b; else a ++; is ( ). A: switch(a) { case 1:a=b;break; <br/>default : a++; <br/>} B: switch(a==1) { case 0:a=b;break;<br/>case 1: a++;<br/>} C: switch(a) { default:a++;break; <br/>case 1:a=b; <br/>} D: switch(a) { default:a++;break; <br/>case 1:a=b; <br/>}