选择结构的程序设计是一种根据判断条件的成立与否来确定下一步所做操作的一种程序控制结构。其程序的执行流程不再像顺序结构那样,从上到下一条条依次执行所有语句,而是根据判断条件的成立与否而走向不同的分支,因而,选择结构也被称为分支结构(见图 1)。C语言对某一条件成立与否的判断处理是用关系运算和逻辑运算来解决的。
关系运算实际上就是比较运算,类似于数学当中比较数字大小的运算。C语言提供了 6 种关系运算符(relational operator),如表 1 所示。
关系运算符 | 描述 | 示例(关系表达式) |
---|---|---|
== | 等于 | a+b == c |
> | 大于 | a+10 > c |
< | 小于 | b < a+10 |
>= | 大于等于 | c >= b |
<= | 小于等于 | a <= c |
!= | 不等于 | a != b |
关系运算符的左右两边可以是变量、数值或算术表达式,用关系运算符连接而成的表达式称为关系表达式。在含有算术运算符的关系表达式中,算术运算符的优先级高于关系运算符。
关系表达式的运算结果是一个逻辑值:“真”或“假”,在 C语言中用数值 1 表示“真”,用数值 0 表示“假”。因而,每当 C语言对关系表达式进行运算时,总是产生结果数值 1 或 0。下面的语句把 1 赋值给变量 a,把 0 赋值给变量 b:
a = (8<10); //(8<10)为“真”,其结果值为 1,因而变量 a 被赋值 1 b = (3==4); //(3==4)为“假”,其结果值为 0,因而变量 b 被赋值 0
图 2 展示了用不同的算法描述方法对选择结构程序设计流程进行算法描述的示意图。