由于 switch (开关)语句需要 case (实例)和 break (打断)的配合使用,所以将这三个关键字在这一期里同时解释。
case 这个关键字生来就只是为了配合 switch 工作的。而 break 这个关键字还有其它用法,我在 C语言_每天一个关键字_break 中有介绍。
switch 的一般应用形式:
switch ( integer-expression)
{
case label1 : statement; break;
case label2 : statement; break;
case label3 : statement; break;
default : statement; break;
}
注释:
switch 语句通过判断 integer-expression (整数表达式)的值来决定接下来执行哪条语句。
- 1、如果 integer-expression 的值为3,那么它接下来会执行 case label3 (标签3): 之后的 statement (语句),在遇到 break 语句后跳出 switch 语句;
- 2、如果 integer-expression 的值为除了1,2,3以外的值,那么它接下来会执行 case default(默认) : 之后的 statement,在遇到 break 语句后跳出 switch 语句。
代码示例:
#include <stdio.h>
int main(void)
{
int i = 3;
switch( i ) //判断 i 的值
{
case 1 :
printf("now i is 1");
break;
case 2 :
printf("now i is 2");
break;
case 3 :
printf("now i is 3");
break;
default :
printf("now i is default");
break;
}
return 0;
}
运行示例:
now i is 3
参考标准:ANSI C
参考资料:《C Primer Plus(第6版)》