❶ c语言中 4&&5的值为什么是1 4&5的值是多少 逻辑与和按位与有什么区别
4&&5的值为1,这里的1是表示真。因为4和5都是非0值。非0即为真。真真得真。所以结果为1。
4&5的值为4。这里4的二进制是shu“100”,5的二进制是“101”。
按位与就是100&101=100(即十进制为4);
&&是逻辑运算符,两个结果中有一个0结果才是0,比如0&&1,结果是0;1&&0,结果也是0。还有一个&是位运算符。
(1)位运算和逻辑运算c语言扩展阅读:
在形式逻辑中,逻辑运算符或逻辑联结词把语句连接成更复杂的复杂语句。例如,假设有两个逻辑命题,分别是“正在下雨”和“我在屋里”,我们可以将它们组成复杂命题“正在下雨,并且我在屋里”或“没有正在下雨”或“如果正在下雨,那么我在屋里”。一个将两个语句组成的新的语句或命题叫做复合语句或复合命题。
❷ 学习C语言
举个例子来说把,3 和 5
逻辑运算符返回真或假(c语言里用0表示假,非0表示真)
3||5 他的值是 真(非0)
3&&0 的值为假(0)
一般用在条件判断中 if(!3),3是真(非0),!3就是假。
位运算符
按位与 3&7,
先转换成二进制 011 & 111
都为1的位结果是1,否则是0,运算后的结果是 011(3).也就是说按位运算的结果仍是一个数字,一般不用在条件判断中。
❸ C语言的逻辑运算和按位运算怎么区分
1、作用的不同
&&、||是逻辑运算符,用于从左到右求表达式的真值。假设x=1;y=2;那么x&&y=1;x||y=1。
&、|是位运算符,是对x,y进行位运算,x,y取值如上,那么有x&y=0;(x的二进制表示为00,y的二进制表示为10)。
2、判断这个表达式的真或假的不同
&和|既是逻辑运算符也是位运算符,而&&和||只是逻辑运算符。
当&与&&同为逻辑运算符时,它们都用于连接两个Boolean类型的表达式,当&和&&的两端表达式同时为真时,表达式的结果为真,只要有一端为假,那么表达式结果为假。
例:3>5&3>2;3>5&&3>2;
当|和||的两端表达式同时为假时,表达式的结果为假,只要有一端为真,那么表达式结果为真。
3、计算方式不同
当使用&运算符:计算机在判断表达式的值的时候,先判断3>5的值为假,然后再判断3>2的结果为真,于是最后的结果是假&真为假;
但是当我们使用&&运算符的时候:计算机先判断3>5的值为假,此时表达式的结果一定为假,所以计算机就不再往下判断了,判定表达式结果为假。