switch语句与break分析 分析 结论


for(int i=0;i<3;i++)
{
    switch(i)
    {
        case 0:printf("%d",i);
        case 2:printf("%d",i);
        default:printf("%d",i);
    }
}

分析

  1. i=0:
    • case 0:printf(“%d”,i); 0
    • case 2:printf(“%d”,i); 0
    • default:printf(“%d”,i); 0
  2. i=1:
    • default:printf(“%d”,i); 1
  3. i=2:
    • case 2:printf(“%d”,i); 2
    • default:printf(“%d”,i); 2

结论

对于满足条件已经进入分支,case语句没有break,分支后面的语句都是会被执行,包括default。