关系运算符和关系表达式
标签: C语言
学习人数: 18.1k


高清播放
赞赏支持

关系运算符

在C语言中有以下关系运算符: 

1.< 小于   
2.<= 小于或等于   
3.> 大于   
4.>= 大于或等于   
5.== 等于   
6.!= 不等于   

关系运算符都是双目运算符,其结合性均为左结合。关系运算符的优先级低于算术运算符,高于赋值运算符。 在六个关系运算符中,<,<=,>,>=的优先级相同,高于==和!=,==和!=的优先级相同。

 

 

关系表达式
关系表达式的一般形式为: 

表达式 关系运算符 表达式   

例如: 

a+b > c-d   
x > 3/2   
‘a’+1 < c   
-i-5*j == k+1   

 

都是合法的关系表达式。由于表达式也可以又是关系表达式。 因此也允许出现嵌套的情况。例如: 

a>(b>c)   
a!=(c==d)   

关系表达式的值是真”和“假”,用“1”和“0”表示。 
如: 
5>0 的值为“真”,即为 1。 
(a=3)>(b=5)由于 3>5 不成立,故其值为假,即为 0。 

 

【例】 

#include<stdio.h>  
  
int main() {  
    char c = 'k';  
    int i = 1, j = 2, k = 3;  
    float x = 3e+5,y = 0.85;  
    printf("%d,%d\n", 'a'+5<c, -i-2*j>=k+1);  
    printf("%d,%d\n", 1<j<5, x-5.25<=x+y);  
    printf("%d,%d\n", i+j+k==-2*j, k==j==i+5);  
    return 0;  
}  

在本例中求出了各种关系运算符的值。字符变量是以它对应的 ASCII 码参与运算的。对于含多个关系运 算符的表达式,如 k==j==i+5,根据运算符的左结合性,先计算 k==j,该式不成立,其值为 0,再计算 0==i+5,也不成立,故表达式值为 0。

登录查看完整内容


课后作业

掌握本节内容


登录后开始许愿

暂无评论,来抢沙发