首页 热点资讯 义务教育 高等教育 出国留学 考研考公

有关c语言的?

发布网友

我来回答

2个回答

热心网友

很有趣的问题,但是我告诉楼主答案是错的(与运行结果不符,switch里的分支一个都跑不了)

首先,switch语句依次处理每个case

其次,在每个case中,switch语句都要进行一,继续对下一个case如法炮制地进行判断

本代码第三个case中的子语句中出现了break,说明语句会跑3次(排除了goto语句或其他具有中断功能的函数的可能)

其次是++(对--亦然),运算符的两个不同位置,被认为是两种运算符,一个前缀一个后缀,……

热心网友

switch( c++ )
{ case 'A':printf("%c ",c++); switch( c++ ) 是后加,c此时还是'A',所以会进入case 'A',与此同时,c变成'B',再遇到printf("%c ",c++) ,输出'B'后,c变成'C',因为没有break,继续向下

case 'B':printf("%c ",++c); ++c为先加,所以c变成'D'输出,继续向下
case 'C':printf("%c ",c++);break;c++为后加,所以继续输出'D',遇到break退出
case 'D':printf("%c ",++c); }
所以结果就会输出B D D

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com