分支结构
1、判断语句if
if 结构基本语法:
if (条件)
语句;
if (条件)
{
语句1;
语句2;
}
执行过程:首先判断条件的结果,如果条件为true,则执行语句,如果条件为false,则跳过语句,执行后面的语句。
if后面括号中的条件,要能计算成一个bool类型的值。
默认情况下,if语句只能带一句话,即if语句知道紧随其后的第一句话,if后面括号的条件成立则执行语句,不成立则跳过该语句执行后面的语句,果然if后面要执行多句话,则需要用{}把if条件后面的语句括起来表示一个语句块。同理,如果if天健不成立,则{}中的语句块不再执行。
2、if_else
语法:
if(条件)
{语句1;}
else
{语句2;}
当if后面的条件成立时执行语句1,跳过else带的语句2,不成立则跳过语句1,去执行else带的语句2 。总之,总有一个语句被执行,具体执行那个语句看条件结果。
条件语句中,不能有这样判断:if(80<a<90)
例如:80<a<90,这样判断的结果不是bool类型,而且也无法计算出结果,因为<是同级运算符,会首先计算80<a然后得出一个bool值,一个bool值是不能跟90相比较的。所以这是一个错误,这样的条件判断需要用到逻辑运算符:即:要想表达80<a<90应该这样表示:
80<a && a<90
3、if - else if
语法:
if(条件1)
{语句1;}
else if(条件2)
{语句2;}
else if(条件3)
{语句3;}
else
{语句4;}
只有当上一个条件不成立时,才会进入下一个if语句并进行if语句后面的条件判断,一旦有一个if后面的条件为true,则执行此if所带的语句或语句块,语句或语句块执行完后,程序跳出if-else if结构,如果所有的if条件都不成立,最后又else则执行else所带的语句块,否则什么都不执行。
else永远和它最近的if是一对
4、switch case
语法:
Switch(条件)
{
Case 值1:语句块1;
Break;
Case 值2:语句块2;
Break;
Case 值3:语句块3;
Break;
Default:语句块3;
Break;
}
执行过程:首先计算表达式,然后根据计算结果与匹配case后面的值,如果有匹配,则执行匹配项后面的语句块,知道break语句跳出switch-case,如果所有的case值都不匹配,那么有default则执行default后面的语句,知道break结束,如果没有default,则跳出switch-case,什么都不执行。
注意:switch后面的条件是什么类型,case后面的值就是什么类型。
不管default的位置在哪都不影响条件与各个case的值的匹配。
if-esle if 与switch-case的相同点和不同点
相同点:它们都可以实现多分支结构
不同点:switch一般只能用于等值比较;if-else if可处理范围
|