🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
# 关系运算符 ## 为什么要学习关系运算符 - 默认情况下,我们在程序中写的每一句正确代码都会被执行。但很多时候,我们想在某个条件成立的情况下才执行某一段代码 - 这种情况的话可以使用条件语句来完成,但是学习条件语句之前,我们先来看一些更基础的知识:如何判断一个条件成不成立。 ## C语言中的真假性 - 在C语言中,条件成立称为“真”,条件不成立称为“假”,因此,判断条件是否成立,就是判断条件的“真假”。 - 怎么判断真假呢?C语言规定,任何数值都有真假性,任何非0值都为“真”,只有0才为“假”。也就是说,108、-18、4.5、-10.5等都是“真”,0则是“假”。 ## 关系运算符 - 在程序中经常需要比较两个量的大小关系,以决定程序下一步的工作。比较两个量的运算符称为关系运算符。 |序号||运算符|结合性| |--|--|--|--| |1|>|大于 如:a>b a>3 5>4 1>2|左结合| |2|<|小于 如:a<c d<3 2<5|左结合| |3|>=|大于等于 如: a>=1 d>=c|左结合| |4|<=|小于等于 如: a<=0 i<=19|左结合| |5|==|等于 i==3 a==b|左结合| |6|!=|不等于 a!=b c!=5|左结合| - 关系运算符的运算结果只有2种:如果条件成立,结果就为1,也就是“真”;如果条件不成立,结果就为0,也就是“假”。 ``` int a = 4, b = 10; int result = a > b; //0 result = a == b; //0 result = a < b; //1 result = a + b > b; // 1 ``` > 算数运算符的优先级大于关系型运算符。 # 关系运算符优先级和结合性 ## 关系运算符结合性 - 关系运算符都是双目运算符,其结合性均为左结合。 + 例如4>3>2:先算4>3,条件成立,结果为1。再与2比较,即1>2,条件不成立,结果为0。因此4>3>2的结果为0。 ## 关系运算符优先级 - 关系运算符中`==`、`!=`的优先级相等,`<`、`<=`、`>`、`>=`的优先级相等,且前者的优先级低于后者 + 例如2==3>1:先算3>1,条件成立,结果为1。再计算2==1,条件不成立,结果为0。因此2==3>1的结果为0。 - 关系运算符的优先级小于算术运算符 + 例如3+4>8-2:先计算3+4,结果为7。再计算8-2,结果为6。最后计算7>6,条件成立,结果为1。因此3+4>8-2的结果为1。 ## Demo 计算下列表达式的值 ``` 3 > 4 + 7; ( 3 > 4 ) + 7; 5 != 4 + 2 * 7 > 3 == 10; ``` 写代码验证