若有定义: float w; int a,b; 则合法的switch语句是_______。
A. switch (w) { case 1.0: printf("*\n"); case 2.0: printf("**\n");}
B. switch (a) { case 1 printf("*\n"); case 2 printf("**\n");}
C. switch (b) { case 1: printf("*\n"); default: printf("\n"); case a: printf("**\n");}
D. switch (a+b) { case 1: printf("*\n"); case 2: printf("**\n"); default: printf("\n");}