【摘要】:如5*a<6*b+3、>=0、'a'+zf<='b'、(x=9)>y、<(y+3)、x+2*y==x/2这样用关系运算符将两个表达式连接起来的式子,称为关系表达式。在关系运算符的两端,可以出现算术表达式、赋值表达式、字符表达式、关系表达式等。例如,关系表达式12>16的值为“假”,98>='a'的值为“真”。当x=10、y=30时,关系表达式“x+8>y-6”不成立,值为“假”,所以此时关系表达式“x+8>y-6”的值为0。可以将关系表达式的值赋给其他变量。
如5*a<6*b+3、(b*b-4*a*c)>=0、'a'+zf<='b'、(x=9)>y、(x-17)<(y+3)、x+2*y==x/2这样用关系运算符将两个表达式连接起来的式子,称为关系表达式。
在关系运算符的两端,可以出现算术表达式、赋值表达式、字符表达式、关系表达式等。关系表达式的值是一个逻辑值,为“真”或“假”。
例如,关系表达式12>16的值为“假”,98>='a'的值为“真”。
在C语言中,用1表示“真”,0表示“假”。
例如,当x=20、y=10时,关系表达式“x+8>y-6”成立,关系表达式的值为“真”,所以此时关系表达式“x+8>y-6”的值为1。当x=10、y=30时,关系表达式“x+8>y-6”不成立,值为“假”,所以此时关系表达式“x+8>y-6”的值为0。
可以将关系表达式的值赋给其他变量。例如:(www.daowen.com)
z=(2*x>3*y+2) (当x=100、y=10时,z的值为l;当x=10、y=30时,z的值为0)
a=(b+1>c-2) (当b=20、c=10时,a的值为1;当b=10、c=50时,a的值为0)
关系运算符的结合方向是自左至右,若m=3、n=2、k=1且y=(m>n>k),则y的值为0。因为按照自左至右的结合方向,先执行关系运算“m>n”的值为1(“真”),再执行关系运算“1>k”的值为0(“假”),因此y为0。
关系运算符的优先级低于算术运算符,但高于赋值运算符。
根据优先级的规定,可以进行以下简化:
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。
有关C语言程序设计的文章