C语言程序设计 语句试题 新手不懂,求详细解释 如图

如图
如图所示,最后的结果为# & 我不懂的是:switch(a>0) ,满足条件,a的确大于0,但是执行图中 case 1 还是case 0 呢?

第1个回答  2015-06-18
不同的编译器,可能会有一点不一样。不过从你的输出结果来看,你的编译器把a>0处理为1,所以执行的是case 1 ,之所以打印的是#是因为你的外层switch的case语句没有加break。所以它会继续执行case 0,然后default语句。所以打印出的是#&。
第2个回答  2015-06-18
把 case 当成 if 用了。本回答被网友采纳
相似回答