选择结构(分支语句)- if与switch
一、初识
选则结构(分支语句)是什么,又是用来干什么的。
打个比方吧,假如你在公园里散步,某个时刻你的面前出现了两个或者多个路口,这时候你就要做出抉择,根据自身的条件与想法,选择其中一条路走下去,选择语句if与switch同样也是这个道理。
二、if语句的三种形式
1、形式一
if(表达式1)
语句1;
当判断语句表达式1成立时,则执行语句1,即:if后括号中表达式为真时,执行语句,下面由一串简单的代码来展示它的运行。
如图所示,括号中判断语句为1,表示表达式1恒为真,则执行语句1,输出Hello world!
2、形式二
if(表达式1)
语句1;
else
语句2;
当表达式1为真时(表达式判断成立),则执行语句1;否则执行语句2。代码运行如下图所示。
3、形式三
if(表达式1)
语句1;
else if(表达式2)
语句2;
else
语句3;
运行:当 if 括号中表达式1成立时,则执行语句1;若表达式2不成立,则执行语句2;若表达式1与表达式2均不成立,则执行语句3。代码如下
三、switch语句
1、switch语句的标准格式
switch(整型表达式)
{
case 整型常量表达式1:
语句1;
break;
case 整型常量表达式2:
语句2;
break;
…
default:
break;
}
当switch括号中整型表达式等于整型常量表达式1时,则执行语句1并结束;若等于整型常量表达式2时,则执行语句2并结束;若整型表达式无整型常量表达式等于case后整型常量表达式的概况,则转至default,结束switch语句的运行。
2、switch情形1——缺少break
switch(整型表达式)
{
case 整型常量表达式1:
语句1;
case 整型常量表达式2:
语句2;
break;
…
default:
break;
}
break语句的实际效果是吧语句列表划分为不同部分,当表达式1后无break语句时,语句2与语句1将全部执行,来看一个简单的代码来了解一下。
两条语句之间缺少break执行顺序由上而下顺序执行,输入值为2时只执行语句2,而不执行语句1。
3、switch情形2——case与default代码顺序可颠倒
三、相关知识点
1、if语句
(1)if之后可以跟多条语句,跟多条语句时需要使用{}括起来
(2)if语句后括号中0表示假,非零表示真
(3)if语句是一种分支语句,可以实现单分支,也可以实现多分支
(4)else语句总是和它最近的if语句匹配
2、switch语句
(1)switch语句是多分支的选择语句,switch中表达式结果命中那个case,就执行该case子项,如果case子项后没有跟break语句,当前case执行结束后,会继续执行紧跟case中的语句,继续往下执行。
(2) switch语句中表达式的类型只能是:整形和枚举类型(枚举类型也可以看成是一个特殊的常量)。
(3)default可以放在任意位置,但是一般建议最好还是放在最后。
(4)没有规定case必须在default之前,一般case最好放在default之前。
(5)switch语句中case表达式不要求顺序。