C语言switch语句中case怎么用的?

如题所述

X=0;y=2;Z=3
在你的代码片段中switch(x)的每个case后面都跟了一条switch语句,下面我给你整理了一下它们的隶属关系,然后进行了分析:
switch(x)
{
case 0:switch(y==2)

case 1:printf("*");break;
case 2:printf("%");break;

case 1:switch(z)

case 1:printf("$");
case 2:printf("*");
defalut :printf("#") ;


首先 switch(x)由于x的值为0,所以进入case 0:而后面的语句又是一switch语句即switch(y==2)由于y的值为2,所以y==2的值为1,因此进入
switch(y==2)

case 1:printf("*");break;
case 2:printf("%");break;

中的case 1: 输出*,然后break结束这个switch(y==2),然后进入外层switch的case 1:进入switch(z)由于z的值为3,所以执行printf("#") ; 输出#,结束。
因此最终输出结果为:*#
温馨提示:答案为网友推荐,仅供参考
相似回答