#include <stdio.h>
main()
{ int i;
for(i=0;i<=3;i++){
switch(i)
{
case 0:printf("%d",i);break;
case 1:printf("%d",i);break;
default:printf("%d",i);
case 2:printf("%d",i);
}
}
}
注意:
①本题中,default在case2的上面,当i=2时,进入switch(i)语句先寻找case常量为2的值,然后输出i的值,case2后面没有语句,所以跳出switch,继续往下执行。
②本题中,若case2在default的上面,那么运行到case2后,因为没有break跳出,所以会继续运行default,然后跳出switch继续往下执行。
③switch()并不进行真假判断,因此switch(0)可以执行。
④当i=3时,由于case里面没有常量为3的数,所以只能先进入default语句,输出i的值,接着继续运行case2,继续输出i的值,然后退出。
运行结果:
01233