举一反三
- 有如下程序段: int x =1, y=1 ; int m , n; m=n=1; switch (m) { case 0 : x=x*2; case 1: { switch (n) { case 1 : x=x*2; case 2 : y=y*2;break; case 3 : x++; } } case 2 : x++;y++; case 3 : x*=2;y*=2;break; default:x++;y++; } 执行完成后,x和y 的值分别为( )。
- 若a为整型变量,b为字符型变量,则以下正确的switch语句是 A: switch((int)x/10){ case 1:a++;break;case 2:b++;break;case 3:c++;break;} B: switch(b){ case ‘\042’;x=a/b;break;case ‘6’;x=a*b;break;case ‘\010’;x=a+c;break;} C: switch((int)x/10);{ case 0:a++;break;default:b++;break;case 3+1:c++;break;case 3:d++;break;} D: switch(a/100+10){ case2 :x=a/b;break; case6 :x=a*b;break;case8 :x=a+c;break;case10 :x=a-c;break; }
- 下述程序段中,无语法错误的是: A: int a=2,b=0; switch(a){ case b+1:a--;break; case b=5: a+=10;break;} B: char x=‘A’,y; switch(x){ case ‘A’:y++;break; case -1: y=5; } C: int a,b=5; switch(b) { case b>;0: a=1;break; case b==0: a=0;break; } D: E: define M 10 int a=1,b; switch(a) {case M-9:b+=5;break; case 1: b=1;break;}
- 变量a,b,x已经通过语句int a=1, b=2;double x=4;声明,则下列选项中没有错误的是 A: switch(x%2){case 1:break} B: switch(x){case 1:break} C: switch((int)x%2){case 1:break} D: switch((a/2.0){case 1:break}
- 若u、w、x、y均是正整型变量,则以下正确的switch语句是( )。 A: switch x{ default : u=x+y; case 10 : w=x-y; break; case 11 : u=x*y; break;} B: switch(x+y){ case 10 : u=x+y; break; case 11 : w=x-y; break;} C: switch(pow(x,2)+pow(y,2)){ case 1: case 3: w=x+y; break; case 0: case 5: w=x-y;} D: switch(x*x+y*y){ case 3: case 3: w=x+y; break; case 0: w=y-x; break;}
内容
- 0
若a、b、c1、c2、x、y均是整型变量,正确的switch语句是______。①switch(a+b);{ case 1:y=a+b;break;case 0:y=a-b;break;}②switch(a*a+b*b){ case 3:case 1:y=a+b;break;case 3:y=b-a;break;}③switch { case c1:y=a-b;break;case c2:x=a*b;break;default:x=a+b;}④switch (a-b){ default:y=a*b;break;case 3:case 4:x=a+b;break;case 10:case 11:y=a-b;break;} A: ① B: ② C: ③ D: ④
- 1
若a、b、c1、c2、x、y均是整型变量,以下正确的switch语句是 A: swich(a+b);{ case 1 : y=a+b; break;case 0 : y=a-b; break; } B: switch(a*a+b*b){ case 3 :case 1 : y=a+b; break;case 3 : y=b-a, break; } C: switch a{ case c1 : y=a-b; break;case c2 : x=a*d; break;default : x=a+b; } D: switch(a-b){ default : y=a*b; break;case 3 : case 4 : x=a+b;break;case 10 : case 11: y=a-b: break; }
- 2
以下程序段的输出结果是( )。 int a=13,b=21,m=0; switch(a%3) { case 0:m++;break; case 1:m++; switch(b%2) { default:m++; case 0:m++;break; } } printf("%d",m);
- 3
以下switch语句结构哪一个是正确的?( ) A: int a=1,b=0,c1,c2,x,y;switch (a*a+b*b) { case 3: case 1: y=a+b; break; case 3: y=b-a; break;} B: int a=1,b=0,c1,c2,x,y;switch a ( ) { case c1: y=a-b; break; case c2: x=a*b; break; default:x=a+b;} C: int a=1,b=0,c1,c2,x,y;switch (a*a+b*b) { default:y=a*b;break; case 3: x=a+b; break; case 10: case 11:y=a-b; break;} D: int a=1,b=0,c1,c2,x,y;switch (a+b); { case 1: y=a+b; break; case 0: y=a-b; break; }
- 4
下列语句执行后, z 的值为 int x=3,y=4,z=0; switch(x%y+2) { case 0:z=x*y;break; case 6:z=x/y;break; case 12:z=x-y;break; default:z=x*y-x; }