C语言重来13:判断的条件

在if语句后面的括号里面,我们把它叫做是一种条件,是两个值之间的关系运算.

下面是列表为一个关系运算符号:(也叫比较运算符)

运算符意义
==相等
!=不相等
>大于
>=大于或等于
<小于
<=小于或等于

这边着重注意一下相等的符号,我在刚开始编代码的时候总是会出错.

注意:两个等号的意思是判断两个数是否相等,而一个等号是简单的赋值.

 关系运算的结果只有两个值:1或0:

关系成立的话就是1,关系不成立的话就是0.

我们可以使用一个代码,在编译器里面来帮助我们理解上面的关系运算的结果:

#include<stdio.h>
int main()
{
	printf("%d\n", 5 == 3);
	printf("%d\n", 5>3);
	printf("%d\n", 5<=3);
	return 0;
}

而结果也证明了上述的定义:

注意,所有的关系运算符的优先级比算数运算的低,但是比赋值运算的高。 

比如,我们举个例子:

#include<stdio.h>
int main()
{
	printf("%d\n", 7 >= 3 + 4);
	return 0;
}

如果3+4先算的话,那结果就是1,如果3+4后算的话,那结果就是0.

 

这就说明算术运算符的优先级更高一些。 

int r=a>0;

 比如上面的这一个代码,如果先是赋值语句的话那就是先,把a的值赋给r,然后再判断r的是否大于0,这句话相当于什么都没干,是毫无意义的。

只有先判断后面的关系运算符,然后把大于0的a赋值给r,这样才有意义。

同时注意,在关系符内部也有一些小的先后的顺序:

比如==和!=相对于其他的关系符的地位更低一点。

举几个例子,比如:

5>3==6>4; 

这个就是先判断两边,都是1,再判断是否相等。

6>5>4  

这个就是根据由左向右的方法来进行计算,先是6>5,正确,所以为1,而1>4错误所以结果为0. 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值