分支结构程序
关系运算符和表达式
在程序中经常需要比较两个量的大小关系, 以决定程序下一步的工作。比较两个量的运算符称为关系运算符。 在C语言中有以下关系运算符:
< 小于
<= 小于或等于
> 大于
>= 大于或等于
== 等于
!= 不等于
关系运算符都是双目运算符,其结合性均为左结合。 关系运算符的优先级低于算术运算符,高于赋值运算符。 在六个关系运算符中,<,<=,>,>=的优先级相同,高于==和!=,==和!=的优先级相同。
关系表达式
关系表达式的一般形式为: 表达式 关系运算符 表达式 例如:a+b>c-d,x>3/2,'a'+1(b>c),a!=(c==d)等。关系表达式的值是“真”和“假”,用“1”和“0”表示。
都是合法的关系表达式。由于表达式也可以又是关系表达式。
如: 5>0的值为“真”,即为1.(a=3)>(b=5)由于3>5不成立,故其值为假,即为0。
void main(){
char c='k';
int i=1,j=2,k=3;
float x=3e+5,y=0.85;
printf("%d,%d\n",'a'+5=k+1);
printf("%d,%d\n",1
printf("%d,%d\n",i+j+k==-2*j,k==j==i+5);
}
char c='k';
int i=1,j=2,k=3;
float x=3e+5,y=0.85;
printf("%d,%d\n",'a'+5=k+1);
printf("%d,%d\n",1
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。