设有说明:int a=1,b=0;,则执行以下语句的输出结果是______。switch(a){case 1: switch(b) {case 0

题目

设有说明:int a=1,b=0;,则执行以下语句的输出结果是______。 switch(a) {case 1: switch(b) {case 0:printf("**0**\n");break; case 1:printf("**1*\n");break; } case 2:printf("**2**\n");break; }

A.**0**

B.**0** **2**

C.**0** **1** **2**

D.switch语句中存在语法错误

参考答案和解析
正确答案:B
解析:本题是switch-case语句的嵌套使用,外层switch语句的第一个分支(嵌套switch语句)执行完后,没有break;语句,将继续执行第二个分支。
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

设有语句: int a=1,b=0; 则执行下面语句后输出为()。 switch(a) { case 1: switch(b) { case 0: printf("**0**");break; case 1: printf("**1**");break; } case 2: printf("**2**");break; return 1; }

A.**0**

B.**0****2**

C.**0****1****2**

D.以上都不对


2,

第2题:

以下程序的执行后,输出显示的结果是()。 #include <stdio.h> int main() { int x=1,y=0; switch (x) { case 1: switch (y) { case 0:printf("firstn"); break; case 1:printf("secondn"); break; } case 2:printf("thirdn"); } return 0; }

A.first second

B.first third

C.first

D.second third


n=4

第3题:

以下选项中与 if (a==1) a=b; else a++; 语句功能不同的switch语句是()。

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++; }


B

第4题:

设有声明语句:int a=1,b=0;则执行以下语句后输出: 。(屏幕输出的所有内容,包括提示格式等,不只写输出值) switch (a) { case 1: switch (b) { case 0: printf("**0**");break; case 1: printf("**1**");break; } case 2: printf("**2**");break; }

A.**0**

B.**0****2**

C.**0****1****2**

D.有语法错误


B

第5题:

设声明语句int a=1,b=0;,执行下面语句后的输出结果为()。 switch(a) { case 1: switch(b) { case 0: printf("**0**");break; case 1: printf("**1**");break; } case 2: printf("**2**");break; }

A.**0**

B.**0****2**

C.**0****1****2**

D.语法有错误


D

第6题:

以下选项中与iF(a==1)a=B;elsea++;语句功能不同的sWish语句是

A.sWitch(a){case1:a=B;Break; deFault:a++;}

B.sWitch(a==1){case0:a=B;Break; case1:a++;}

C.sWitch(a){DeFault:a++;Break; case1:a=B;}

D.sWitch(a==1){case1:a=B;Break; case0:a++;}


正确答案:B
解析:switch(a==1)语句中,若a等于1,则a==1为"真",则应该进行a=b的操作,故选项B错误。

第7题:

以下程序的运行结果是( )。

main()

(int a=2,b=7,c=5;

switch(a>0)

{case 1:switch(b<0)

{case 1:switch(");break;

case 2:printf("!");break;

}

case 0:switch(c==5)

{case 0:printf("*");break;

case 1:printf("");break;

case 2:printf("$");break;

}

default:printf ("&");

}

printf("\n");

}


正确答案:#&
#& 解析:刚开始时,switch后面的表达式a>0为真(1),与case1匹配,然后执行case1后面的switch语句,表达式b0值为0,没有与其匹配的语句,返回外层,因为外层没有break语句,顺序执行case 0后面的switch语句,表达式“c==5”值为1,与其后面的case1匹配,因此输出#,遇到break返回外层,又因为外层没有break语句,顺序执行default后的语句,输出&。

第8题:

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

请阅读以下程序: #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

第9题:

( 18 )以下选项中与 if ( a==1 ) a=b; else a++; 语句功能不同的 switch 语句是

A )

switch ( a )

{case : a=b ; break ;

default:a++ ;

B )

switch ( a==1 )

{case 0 : a=b ; break ;

case 1 : a++ ;

}

C )

switch ( a )

{default : a++ ; break ;

case 1 : a=b ;

}

D )

switch ( a==1 )

{case 1 : a=b ; break ;

case 0 : a++ ;

}


正确答案:B