switch case嵌套

switch嵌套的一般形式:

switch(表)

case常量1:语句1

case常量2:switch(表达式)

{case常量1:语句1

case常量2:语句2

......

case常量n:语句n

default:语句n+1

}

.....

case常量n:语句n

default:语句n+1

扩展资料

在使用switch语句注意事项:

1、在case后的各常量表达式的值不能相同,否则会出现错误。

2、在case后,允许有多个语句,可以不用{}括起来。

3、各case和default子句的先后顺序可以变动,而不会影响程序执行结果。

4、default子句可以省略不用。

就是在第一switch的某个case或default语句中进套。

例如:

int a=4,i=0;

switch(a)

{

case 1: 

{

printf("abc");

break;

    }

case 2: 

{

printf("abcd");

        break;

}

case 3: 

{

i++;

switch(i)  // switch语句中嵌套switch语句

{

case 1: printf("fff");break;

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

default: printf("222");

}

break;

}

default :

printf("error");

}

扩展资料:

注意

1、witch后面括号里的结果必须是×××值。因为这个值是要和case语句后面直接跟的常量表达式进行匹配的。

2、break在switch case语句中主要是将语句划分成不同的部分,方便匹配后跳出switch语句。

3、default的位置并不是固定的。为了使程序正常运行,它放在case之间的时候,后面必须跟上break语句;如果放在最后,可以跟break语句,也可以不跟。

4、不是所有case语句最后都跟有break。我们起初见到的代码里,基本上每个case最后都跟有break,它是指当switch后面括号里的表达式与哪一个case后面的常亮表达式匹配时,直接进入这个case,执行完里面的语句后,遇到break,直接退出整个switch case语句。

实际当中,我们还会碰到类似于上述代码的情况(不是所有case语句最后都跟有break),这个时候,程序总是从匹配的case执行,直到遇到break或者程序走到最后的default结束,退出switch case语句。 

printf("please input second letter\n");
letter =getchar(); // 把抽出来放在 if 以前;
if (letter ==a) {...}
else if (letter == u){...}
else {...};
-----------------
出来的话,那么 每进一 else if , 就会又执行 一句 getchar(); 要求 你再输入一个字符,
字符次序就乱了。

switch中嵌套switch就是在个switch的某个case语default语句中进行嵌套。


下面以switch嵌case语句中进行举例说明。

int a=4,i=0;
switch(a)
{
    case 1: 
    {
        printf("abc");
        break;
    }
    case 2: 
    {
        printf("abcd");
        break;
    }
    case 3: 
    {
        i++;
        switch(i)  // switch语句中嵌套switch语句
        {
            case 1: printf("fff");break;
            case 2: printf("111");break;
            default: printf("222");
        }
        break;
    }
    default :
        printf("error");
}
第getchar()获取的是第一次getchar()的回(\n), 因为你第一次2后, 要回车, 而这个回车(0x0a)也在输入缓冲区内, 没有被吃掉, 结果就是内switch两个case都不成立, 而且你外switch的case2没有break, 导致case3 直接条件成立 , 程序结束.

尽量少用scanf, getchar这种函数, 有陷阱, 初学者很容易莫名其妙的错误..
喜欢阅读
  • 至爱难相忘

    至爱难相忘

    顾安夏以为,这桩婚姻只是一场交易。她拿钱办事,银货两讫。却没想到,在她想要功成身退的时候,她名义上的老公却不乐意了。容君望:“你以为你想离开就离开,我容君望是这么随便的人吗?”顾安夏嫣然一笑:“知道你不随便,所以我这个假老婆才要退位呀!”

  • 束手就情:前妻不二嫁

    束手就情:前妻不二嫁

    七年相知相伴终究抵不过一场阴谋,一纸婚书,一张契约,她被当做用来挽救家族利益的工具送给容琛,被迫嫁入豪门,日日夜夜忍受着羞辱和折磨,明明对她恨之入骨,却为何每次都在她最危险的时候出现。明明相思入骨,却为何还要满身利刺的将对方刺得鲜血淋漓。他步步紧逼,她步步沦陷,本以为容琛对自己终究有情,却不知那温柔的背后是一杯致命的毒药。时来孕转,林深深以为自己怀上了容琛的孩子就可以再次回到最初,那人却是一把桎梏着她的下巴,逼着让她打胎。她被迫逃离,他却在紧要关头一把将她推下地狱,却只听见容琛无情的对她说:“林深深,容夫人这个位置你坐的舒服么?记住,这是你欠她的!”一纸离婚协议书终于落下,再次回归,她已经是豪门财阀顾晟的未婚妻,强势回归,素手纤纤,那人却将她逼至:“林深深,你今生只能是我容琛的妻!”

  • 50005

    50005

    一个人,如果没有身份,那就是一只独自在草原上行走的羔羊,无论多么小心翼翼,都有随时被畜生吃掉的可能。要是下嘴的是老畜生还好,最起码还能死个痛快。就怕动嘴的是没经过世面的小畜生,那才是一种折磨。十年前,杨幺就是人们眼中的小畜生。而今,小畜生已经成功跨过了地狱之门。重回繁华都市虽已风光不再,但是满腔热血已经铸就了一副铁骨!誓要凭着双拳,打下一片大大的后宫!

  • 我的日本明星老婆

    我的日本明星老婆

    即将出演日本某V电影的岛国宅男女神——泷泽香奈,突然闯进了纯洁少年唐飞的生活中。而爱国的他,决定用最简单粗暴的方法,来一展我中华好男儿的雄威……...

  • 厉少的闪婚爱妻

    厉少的闪婚爱妻

    毕业聚会上,清欢喝的烂醉,莫名其妙推倒了一个男人。后来,那个天神一般的男人左手一张一亿元的欠条,右手一个小红本本,冷眼睨她,“选哪个?”清欢瑟瑟发抖状,“选……红本本。”男人满意笑了。三个月前,清欢闪婚嫁给了洛城地位最高钞票最多的男人,所有人都羡慕她。三个月后,那男人成了残废,羡慕的目光变成了怜悯。清欢勾唇,笑的眉眼弯弯,“他们说你不仅残废,还不举。”正努力做复健训练的某人,“你要不要试试?”

  • 总裁爹地宠上天

    总裁爹地宠上天

    她为了逃生闯入他的房间,谁料却误成了他心头的肉。四年后携宝归来,渣男贱女通通滚开,至于那个跟自己的宝贝长得一模一样的总裁?抱歉,儿子是我一个人的,想抢走试试看?某总裁微微勾唇,倾身上前:“儿子是我们的,你,是我的。”

  • 婚途似锦难重逢

    婚途似锦难重逢

    你不配拥有我的孩子!他浅笑逼近,膝盖狠狠顶撞她微微隆起的小腹!她哀苦求饶,她是他明媒正娶的妻,却得不到他丝毫的怜惜。黏稠的鲜血,心凉如死。他却看也不看,只残忍的缓缓吐出一句,“你给我生的孩子,我觉得脏。”这一世的繁花似锦,她要如何来圆梦。

  • 通天妖孽

    通天妖孽

    我有一法,万里云山灭我有一剑,人心鬼蜮破我有一宝,界内乾坤藏我有一心,问道长生路

  • 猜你喜欢
  • 热门推荐
  • kaxkardiki hikaya22
  • 应城天气预报30天气报
  • 算命,算生辰八字准吗
  • A wealth
  • 长春光华学院2017开学时间
  • 美国队长装备
  • 江苏省人社厅苏建
  • 瑞芝灵芝菌粉有激素吗
  • mx6运行内存
  • sap 往来客户余额明细
  • 国家质检总局局长
  • 修道院啤酒ipa
  • 功效型牙膏
  • 摩洛哥护发精油专柜价
  • 井陉矿区房子价格
  • 金陵船厂搬迁最新消息
  • chiangrai是泰国哪里
  • 名师学案八上数学答案2018
  • 六个月宝宝拉肚子黄水
  • end game Taylor 抖森
  • All Right Reserved 资料库