课程
/后端开发
/PHP
/PHP入门篇
没有break 会一直执行到底嘛不是,应该是执行default下面的语句,这样B列子的值就是20,但是为什么输出了40 啊?不懂!!
2015-08-10
源自:PHP入门篇 6-6
正在回答
没有break,代码会按照顺序结构依次执行代码。
//B例子 $num = 2; $sum = 10; switch($num){ case 1: $sum = $sum + 10; case 2: $sum = $sum + 10; case 3: $sum = $sum + 10; default: $sum = $sum + 10; }
因为 num = 2
所以从 case 2 开始执行
sum = 10
case 2: sum = 10 + 10
case 3: sum = 20 + 10
default: sum = 30 + 10
sum = 40
ITer 提问者
zichy 回复 ITer 提问者
老师,你好厉害
和c语言不一样的
看了楼上的解释瞬间明白了,因为在PHP中变量会一直变的~~~所以最后累加成了40而非20!
举报
PHP入门教程轻松学习,行业大牛帮您快速掌握PHP编程基础知识。
4 回答B栗子中执行了Case2之后,继续执行Case3和default,那结果应是60吧,为什么是40???
1 回答这里的if条件语句是怎样判断是执行还是不执行啊??
2 回答第二个没有break,却也输出了结果,按理说应该是一直循环的执行下去吧。。。。
4 回答在例子B里面,为什么值是40而不是30?
2 回答例子A一次都不执行为什么输出是10???