C语言编程知识总结——选择结构程序设计


第四章   选择结构程序设计

关系运算符

  • 结合性均为左结合
  • <<=>>=的优先级相同,高于==!===!=的优先级相同
  • 优先级:  赋值运算符 < 关系运算符 < 算术运算符

    特别注意: === 。 尤其在 if 条件判断中。

逻辑运算符

  • &&|| 均为 双目运算符 , 具有左结合
  • !单目运算符 , 具有右结合
  • 优先级:  ! > 算术运算符 > 关系运算符 > && > || > 赋值运算符
  • 先决与 、 先决或

if 语句的嵌套

  • else 总是与它前面最近的未配对的 if 配对

条件运算符

  • 优先级:! > 算术运算符 > 关系运算符 > && > || > 条件运算符 > 赋值运算符
  • a>b?a:b+1 应理解为 a>b?a:(b+1) , 而不是 (a>b?a:b)+1
  • 结合方向: 自右至左
    例如:a>b?a:c>d?c:d 应理解为 a>b?a:(c>d?c:d)

switch 语句

格式:

switch(表达式)
{
case 常量表达式1: 语句1;
case 常量表达式2: 语句2;
…
case 常量表达式n: 语句n;
default : 语句n+1;
}

  当表达式的值与某个常量表达式的值相等时,执行其后的语句,然后不再进行判断,继续执行下面所有 case 后的语句。
  如果表达式的值与所有case 后常量表达式的值均不相等,则执行 default 后的语句。

  • switch 后面的表达式两边的括号不能省略
  • case 后面的常量表达式中不能出现变量,且类型必须是整型字符型枚举型,各个常量表达式的值不能重复,且与 case 间要有空格隔开。
  • default可选项,其与 case 语句的出现顺序没有严格限制,可出现在任何位置,不会影响执行结果。
  • case 后面的语句可以是一条多条语句,也可以为空。为多条语句时,可以不用{} 将它们括起来;为空时,程序执行到此会自动向下顺序执行,实现多个case 共用一组执行语句。
  • 使用 break 语句跳出 switch 语句

文章作者: John
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 John !