switch fall-through一题

1、问题描述
输出以下结果

int n = 'c';



switch(n++)

{

    default: printf("error"); break;

    case 'a':case 'A':case 'b':case 'B':printf("ab");break;

    case 'c':case 'C':printf("c");

    case 'd':case 'D':printf("d");

}


2、结果
cd

3、析
switch 的fall-through:如果case后不加break,就依次执行下去。
另关于default,若无任何条件满足时,执行 default后语句。
若有条件满足,先执行对应条件后语句,若不加case且就向下执行,经过default
时同样执行default后语句,若default在该条件的上方,则无case时不
执行default后语句。

你可能感兴趣的:(switch)