时间:2016-12-21来源:本站原创作者:佚名

C语言关系运算符和逻辑运算符几乎无所不在,比如在循环语句、分支语句、逻辑判断等语句块中都会出现。学好这部分对学好C语言具有重要作用。

C语言中有一共有如下6中关系运算符:小于=小于或等于大于=大于或等于==两边相等!=两边不相等

关系运算符都是双目运算符,其结合性均为左结合。关系运算符的优先级低于算术运算符,高于赋值运算符。在六个关系运算符中,,=,,=的优先级相同,高于==和!=,==和!=的优先级相同。他们比数学运算优先级要低。

关系运算符所在的表达式称为关系表达式,它的运算结果是一个逻辑结果,真或者假。比如:

53结果为真5=5结果为真53为假5=5为真3+24为真

C语言中的逻辑运算符一共有三种:

逻辑与(参与运算的两个量都为真时,结果才为真,否则为假)

逻辑或(参与运算的两个量只要有一个为真,结果就为真。两个量都为假时,结果才为假)!逻辑非(逻辑取反,非真结果为假,非假结果为真)

与运算符和或运算符

均为双目运算符。具有左结合性。非运算符!为单目运算符,具有右结合性。其中与运算和或运算优先级一样,但是低于非运算。C语言规定,数字运算时,0为假,而非0为真。

注意,逻辑运算中,只要前面的运算后假,后面的运算就不会在计算了。

比如有下面的代码段:inta=1,b=2;if((ab)GetVal()){...}

这个代码中,由于逻辑与前面的(ab)这个已经不满足了,程序就不会再去执行后面的GetVal函数了,这一点尤其注意。同样在或运算

中,如果运算符左边的已经为真,则后面的部分也不会在计算,还是上面这个a和b。

if((ab)

GetVal()){...}

这里的GetVal函数也不会执行,因为前面以及得出结论,整个结果一定是真,后面就不在计算。

----------------------我是不严谨的分割线-----------------------

你在学习编程的时候是不是遇到很多困难无从下手?

你在学习编程的时候是不是觉得很枯燥没有小伙伴一起?

你是不是想快速成长成为一名真正的程序员?

你是不是想找一名导师来指导一下职业规划?

你是不是想知道BAT这样的公司是什么样的?

.........

所有的这些疑问都不是事,加入下面的QQ群或者







































点状白癜风
北京白癜风医院那里好

转载请注明原文网址:http://www.gzdatangtv.com/cksc/4985.html

------分隔线----------------------------