黑马程序员---C语言基础---关系、逻辑运算

------- android培训java培训IOS培训期待与您交流! ----------

1、关系运算符和关系表达式。

(1)"关系运算"其实就是比较运算,是对两个值进行比较,比较的结果是真和假两种值。如

a>3//>号为关系运算符,整个a>3是关系表达式
(2)关系运算符及其优先级。

C语言提供了6种关系运算符,他们分别是>、<、>=、<=、!=、==。

结合方向都是自左向右。

他们的优先级如下

(3)关系表达式:用关系运算符把两个表达式联系起来的式子。如

a>b;(a+b)>(c+d);5==3;
关系表达式的值是逻辑值真和假,分别用0和1表示。如
int a=2,b=3,c=1,d,f;
a<b//表达式值为1
(a>b)==c//表达式值为0
d=a>b//d=0
暖心小Tip:像a>b>c>d这样的表达式也是可以的,关系运算符的结合方向是自左向右,另外应该尽量避免浮点数之间以及浮点数和0进行比较,注意区分“=”和“==”,一个是赋值一个是比较是否相等。

2、逻辑运算符和逻辑表达式:用逻辑运算符将关系表达式或逻辑量连起来的式子就是逻辑表达式。

(1)逻辑运算符:显然是与或非,他们分别是&&、||、!,注意&&和||是双目运算符,!是弹幕运算符。

(2)逻辑运算真值表:

(3)逻辑运算符的优先级:


(4)逻辑表达式:

C语言中,0表示假,非零表示真。

5>3&&2||8<4-!0//其值为1
(5)逻辑运算中的短路问题:

逻辑表达式求值时,并非所有的逻辑运算符都被执行,只是在必须执行下一个逻辑运算符才能求出表达式的值时,才去执行该运算符。如

a&&b&&c//只在a为真时才判别b的值,只有在a,b都为真时才判别c的值
a||b||c//只有在a为假是才判别b的值,只有在a,b都为假时才判别c的值
比如
a=1;b=2;c=3;d=4;m=1;n=1;
(m=a>b)&&(n=c>d)//结果m=0,n=1
综合运用:判断一年是否为闰年。
year%4==0//判断被四整除
(year%4==0)&&(year%100!=0)//被四整除同时不能被100整除
(year%400==0)//能被400整除
//综合起来:
((year%4==0)&&(year%100!=0))||year%400==0
//优化之后
(year%4==0&&year%100!=0)||year%400==0

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值