第六章 分支语句和逻辑运算符

第六章  分支语句和逻辑运算符

6.1  if 语句

    If 语句首先测试条件,如果条件为true,if 语句将引导程序执行语句或语句块,如果条件为false,程序将跳过这条语句或语句块。

    If 语句的语法:

if (test-expression)
    statement

     整个if语句被是为你一条语句,与while一样,statement或者为一条语句,或者为花括号括起来的语句块。

6.2  if else 语句

    If else 语句让程序决定执行两条语句或语句块的哪一条。

    If else 语句的语法:

if (test-expression)
    statement1
else
    statement2

6.3  if else if else 语句

    当连用if else 语句时,可以使用下面的格式:

if (test-expression1)
    statement1
else if (test-expression2)
    statement2
else

6.4  逻辑表达式

    6.4.1  逻辑或运算符

    逻辑或运算符为||,当两个逻辑表达式有一个为true时,结果为true,否则为false。

    6.4.2  逻辑与运算符

    逻辑与运算符为&&,当两个逻辑表达式有一个为false时,结果为false,否则为false。

    6.4.3  逻辑非运算符

    逻辑非运算符为!,当逻辑表达式为true时,结果为false,否则为true。

    6.4.4  逻辑运算符细节

    ||和&&运算符的优先级都低于关系运算符。

    ||运算符的优先级低于&&运算符。

    !运算符的优先级高于所有的关系运算符和算术运算符。

    尽管知道运算符的优先级,还是应该尽量使用括号。这样不仅可以防止错误,还可以增强代码的可读性。

6.5  ? : 运算符

    条件运算符(? :)常用语代替if else语句。是C++唯一一个三目运算符(即接受3个操作数)。格式如下:

test_expression ? true_case_expression : false_case_expression

     如果test_expression为true,则执行true_case_expression,否则执行false_case_expression。

6.6  switch语句

    Switch语句的格式如下:

switch (integer_expression)
{
case label1: statement(s)
case label2: statement(s)
...
default: statement(s)
}

    这里integer_expression必须是整型的表达式。

    每个label都必须是整型常量表达式(可以是字面值、枚举量、常量等)。如果integer_expression不匹配任何label,则跳入default标签。Default标签是可选的,如果被省略,而又没有匹配的标签,程序将跳出switch语句。C++中的case标签如果被匹配,将继续执行之后的所有语句,包含剩余标签内的语句。要使程序执行完一组特定的语句之后停止,必须使用break语句。

    小提示:如果既可以使用if else语句,也可以使用switch语句,当选项不少于3个,应当使用switch语句。

6.7  break和continue语句

    在switch语句或者循环体中使用break语句,将使程序跳出switch或者循环体。Continue语句使用于循环体,让程序跳过循环体余下的代码,开始新一轮的循环。在while语句中,立即执   行下一次条件测试,在for循环中,先执行update_expression,再执行test_expression。

原文地址:https://www.cnblogs.com/Dream-Fish/p/3963540.html