想知道这个程序是怎么运行的,运行的过程是什么,为什么只有三个值,不应该是循环6次有5个值吗
因为case 1的代码块有continue,并且前面case 3和case 0都没有break,因此当i为0,1,3的时候,都会执行continue,导致不会执行后面的print函数
循环是i=0到i=6,一共循环6次,由于0,1,3被continue,不输出,因此最后实际print执行三次,输出三个数
要在case后面加上break语句,否则碰到第一个符合条件的case,后面的case都会执行。
switch中的case穿透现象,记得break
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!执行三次的原因是因为当i=0 , 1 , 3时,会被continue掉,所以不会打印
如果想要实现6次循环,在每个case后面添加break
完整的switch语法
switch(){
case :
break;
case :
break;
default:
break;
}