在c语言的选择结构中,if——else语句一般指用来处理一个或者两个分支的选择结构,如果分支较多还使用if_else语句的话就会导致程序运行效率降低,代码可读性减弱。所以,switch就应运而生了。switch的英文意思是“切换”,所以它在编程中就做了一个选择分支的专业术语。
首先我们来交流下switch语句的基本语法
switch (表达式) //计算表达式的值
{
case 常量 1: //如果等于常量1
语句; //case后面只能加常量
break; //跳出分支,执行switch语句之后的代码
case 常量 2: //如果等于常量2
语句;
break;
default: //如果没有找到匹配的值
语句;
break;
}
switch语句的执行流程
switch语句中的执行顺序是自上向下的,它首先就要计算表达式的值,如果发现表达式的值和case后面的常量值相等的时候,就执行相应的那段case语句。如果没有找到和表达式值相匹配的常量,程序就会执行default那段代码。
ps:在使用的switch的时候一般都要用上break语句。(break语句是用来跳出此次选择或者循环,执行选择或者循环后的代码)因为既然我们选择使用switch语句,那么分支就一定比较多,什么是分支?我们暂且不去讨论它的理论意义,我们只需要知道分支条件一定不会是相等(如果相当的话,那还要分家干什么,全部和而为一不算了?)既然不会有相等,那么就必须让程序又个“井水不犯河水”的思想,所以我们就可以某个case后加上一个break,回家请功去。
接下来我们了解下switch在使用时的一些经验
1、swtich语句要和case,break配合使用。
2、条件判断的表达式类型可以是任何类型,一般常用的就是整型表达式,字符表达式,枚举类型。
3、case后面只能加上常量,也就是说只能是整型常量或者字符串常量(c语言中没有string,所以要想实现字符串的效果一般都是使用字符数组)最重要的是,每个case后面的常量值必须互不相同,互不干扰。否则程序就会出现逻辑错误。
4、case与case,case与default的排列顺序可以被打乱,打乱不会影响执行的效果。
IT技术网:http://www.52ij.com/小谦,如有转载,请保留原地址!