逻辑运算符题目集
&:逻辑与操作,都为1时,才为1,通常用0,将某一位变为0;
|:逻辑或操作,都为0时,才为0,通常用1,将某一位变为1;
^:逻辑异或操作,相同为0,不同为1;
第1题:
1 int f(int x,int y) 2 { 3 return (x&y)+((x^y)>>1) 4 }
解析:x&y取相同部位,x^y取不同部位,x&y + x^y = x+y; >>运算符是所有运算符中等级最低的,最后进行.因而是求(x+y)/2;
答案:(x+y)/2
&:逻辑与操作,都为1时,才为1,通常用0,将某一位变为0;
|:逻辑或操作,都为0时,才为0,通常用1,将某一位变为1;
^:逻辑异或操作,相同为0,不同为1;
第1题:
1 int f(int x,int y) 2 { 3 return (x&y)+((x^y)>>1) 4 }
解析:x&y取相同部位,x^y取不同部位,x&y + x^y = x+y; >>运算符是所有运算符中等级最低的,最后进行.因而是求(x+y)/2;
答案:(x+y)/2