- 2
- 0
- 约1.91千字
- 约 18页
- 2024-04-11 发布于江西
- 举报
关系表达式和逻辑表达式术语“控制流”(FlowOfControl)是指程序语句执行的顺序。除非特别指定,否则所有程序的正常控制流都是顺序的(这意味着每个语句都是顺序执行的,一个接一个地按照它们在程序中的顺序执行)。
选择语句和重复(循环)语句都允许程序员改变控制流的正常顺序,正如它们的名称所暗示的,选择语句提供了从一组设计良好的语句组中选择接下来将要执行的语句的能力;而重复语句提供了转回来重复执行一组语句的能力。
所有的程序都由这这三种(顺序、选择、循环)控制结构构成,这就是结构化程序设计中的一个重要原则。§控制流(程序流)§顺序结构顺序流程意味着每个语句都是顺序执行的,一个接一个地按照它们在程序中的顺序执行,且只执行一次。§选择(分支)结构选择(分支)结构提供了从一组设计良好的语句组中选择接下来将要执行的语句的能力§循环结构循环结构提供了转回来重复执行一组语句的能力。在我们编写程序的时候,需要控制程序根据条件来选择执行相关的操作。很多时候,需要判断的条件往往不止一个,比如从键盘输入一个数,我们要判断它是否大于0,并且小于10,这里的“大于”,“小于”就是关系运算,“并且”就是逻辑运算。
C语言为我们提供了逻辑运算和关系运算,用它们构成复杂的控制条件,来实现程序的选择结构和循环结构。§程序设计条件的表示关系运算和我们数学中的比较运算基本一致,它们用于两个操作数(整数、浮点数、字符数据)的比较。
C语言为我们提供了6种关系运算符:§关系运算符和关系表达式大家应该也有点累了,稍作休息大家有疑问的,可以询问和交流关系运算符都双目运算符,满足从左到右的结合律。它们的优先关系如下:1、关系运算符的优先级要低于算术运算符。比如语句:c=b+2;则先计算b+2的值,再和c比较。2、关系运算符的优先级高于赋值运算符。比如语句“a=bc;”,先进行关系运算“bc”,成立(真),则bc值为1,不成立(假),则bc值为0;然后再做赋值运算,把1或0赋值给a。3、关系运算符、=、、=的优先级要高于==、!=的优先级,同级之间优先级相同。比如语句“ca!=b;”,先计算“ca”,再算“!=”的值,等价于“(ca)!=b”。
4、除了数学运算对象之外,还可以使用关系运算符来比较字符数据,char值将被强制转换成int值以进行比较。5、不能直接使用关系运算符比较字符串。§关系运算符的运算关系表达式就是用关系运算符把两个表达式连接起来的式子,它的一般形式是:
表达式1关系运算符表达式2
例如,判断一个学生成绩是否及格。定义变量:score表示学生成绩,判断“score=60”表达式是否为真,为真其就是1,为假就是0。当score=86,“score=60”为“真”,表达式的值为1;当score=54,“score=60”为“假”,表达式的值为0;
总结来讲,关系表达式的值只有两种可能:关系成立,则关系表达的值为“真”(值为1);关系不成立,则关系表达式的值为“假”(值为0)。在C语言中用非0值表达“真”,用0表达“假”。§关系表达式想要判断整数sum的取值是否满足:0≤sum≤100;千万不能写成“0=sum=100,而需要按这样的句式:sum=0并且sum=100来表达。也就是说,除了使用关系表达式表示简单的条件以外,还可以使用逻辑运算与、或、非来创建更为复杂的条件。§逻辑运算符和逻辑表达式C语言的逻辑运算符有3种:§逻辑运算符逻辑与运算符是用于两个关系表达式时,只有当每个表达式都为“真”时该条件才为“真”。逻辑或运算符||也是用于两个表达式的,只要两个表达式至少有一个是“真”,该条件就为“真”。非运算符!将把表达式更改为它的相反状态,也就是就,如果表达式为“真”,那么它的非运算的值就为“假”;如果表达式开始为“假”,那么它的非运算的值就为“假”。前面表格中的“a13d20”就是逻辑表达式,逻辑表达式的值取1(真),或者0(假)。
一个逻辑表达式可以包含多个逻辑运算符,它们的优先级顺序是:“!”的优先级最高,“”次之,“||”的优先级最低。逻辑运算符“”、“||”的优先级低于所有关系运算符,而“!”的优先级高于所有算术运算符。§逻辑表达式
原创力文档

文档评论(0)