为什么会一直出现illegal break啊?

请教各位一个比较基础的问题,在用c做案例时,为什么会一直出现illegal break啊?

img

中间那段修改如下,供对照参考:

if (d == 0)
{
    switch (b) {
    case 1:y = c; break;
    case 2:y = c + 31; break;
    case 3:y = c + 31 + 29; break;
    }
}
else
{
    switch (b) {
    case 1:y = c; break;
    case 2:y = c + 31; break;
    case 3:y = c + 31 + 28; break;
    }
}

你switch里面的括号呢{}

switch(b){
     case ……
     case ……
     case ……
}

是这样的结构

switch(b){
    case 1: y =c;break;
    ...
}