分支结构程序_5.pdfVIP

  • 2
  • 0
  • 约 12页
  • 2017-08-22 发布于河北
  • 举报
分支结构程序_5.pdf

5 分支结构程序1 5.1 关系运算符和表达式1 5.1.1 关系运算符及其优先次序1 5.1.2 关系表达式1 5.2 逻辑运算符和表达式2 5.2.1 逻辑运算符极其优先次序2 5.2.2 逻辑运算的值3 5.2.3 逻辑表达式3 5.3 if语句4 5.3.1 if语句的三种形式4 5.3.2 if语句的嵌套7 5.3.3 条件运算符和条件表达式9 5.4 switch语句10 5.5 程序举例11 5 5 55 分支结构程序 5.1 关系运算符和表达式 5.1 关系运算符和表达式 55..11 关关系系运运算算符符和和表表达达式式 在程序中经常需要比较两个量的大小关系,以决定程序下一步的工作。比较两个量的运 算符称为关系运算符。 5.1.1 5.1.1 55..11..11关系运算符及其优先次序 在C语言中有以下关系运算符: 1) 小于 2) = 小于或等于 3) 大于 4) = 大于或等于 5) == 等于 6) != 不等于 关系运算符都是双目运算符,其结合性均为左结合。关系运算符的优先级低于算术运算 符,高于赋值运算符。 在六个关系运算符中,,=,,=的优先级相同,高于==和!=,== 和!=的优先级相同。 5.1.2 5.1.2关系表达式 55..11..22 关系表达式的一般形式为: 表达式 关系运算符 表达式 例如: a+bc-d 第1页 x3/2 ‘a’+1c -i-5*j==k+1 都是合法的关系表达式。由于表达式也可以又是关系表达式。因此也允许出现嵌套的情况。 例如: a(bc) a!=(c==d) 等。 关系表达式的值是真”和“假”,用“1”和“0”表示。 如: 50的值为“真”,即为1。 (a=3)(b=5)由于35不成立,故其值为假,即为0。 【例5.1】 main(){ char c=k; int i=1,j=2,k=3; float x=3e+5,y=0.85; printf(%d,%d\n,’a’+5c,-i-2*j=k+1); printf(%d,%d\n,1j5,x-5.25=x+y); printf(%d,%d\n,i+j+k==-2*j,k==j==i+5); } 在本例中求出了各种关系运算符的值。字符变量是以它对应的ASCII码参与运算的。对 于含多个关系运算符的表达式,如k==j==i+5,根据运算符的左结合性,先计算k==j,该式不 成立,其值为0,再计算0==i+5,也不成立,故表达式值为0。 5.2 逻辑运算符和表达式 5.2 逻辑运算符和表达式 55..22 逻逻辑辑运运算算符符和和表表达达式式 5.2.1 5.2.1 55..22..11逻辑运算符极其优先次序 C语言中提供了三种逻辑运算符: 1) 与运算 2) || 或运算 3) ! 非运算 与运算符和或运算符||均为双目运算符。具有左结合性。非运算符!为单目运算符, 具有右结合性。逻辑运算符和其它运算符优先级的关系可表示如下: !(非)→(与)→||(或) 第2页 !(非) 算术运算符 关系运算符 和 || 赋值运算符 “”和“||”低于关系运算符,“!”高于算术运算符。 按照运算符的优先顺序可以得出: ab cd 等价于 (ab)(cd)

文档评论(0)

1亿VIP精品文档

相关文档