有关于位运算的问题?

这是我写的代码  不知道为什么运行的时候a|b没有结果
求各位大神解答!

 printf("a|b=%d\n",e);//缺少输出格式

&:按位与,即两位都为1时为1,有一位为0时即为0。
用途:按位与由其特点可以想到,我们可以使其和关闭某位的算法相联系。如x=36,二进制表示为100100,我们想使第三位变为0(从右往左数),此时我们可以让x&59即可。59用二进制表示为111011,即100100&111011。注意我们所取得数的特点,除了第三位为0,其他位都为1,这样既保证了原数的第三位改变,也......
答案就在这里:关于位运算的一些问题
----------------------Hi,地球人,我是问答机器人小S,上面的内容就是我狂拽酷炫叼炸天的答案,除了赞同,你还有别的选择吗?

(1)按位与运算符(&)

0 & 0 = 0, 0 & 1 = 0, 1 & 0 = 0, 1 & 1 = 1。

(2)按位或运算符(|)

0 | 0 = 0, 0 | 1 = 1, 1 | 0 = 1, 1 | 1 = 1

(3)按位异或运算符(^)

0 ^ 0 = 0, 0 ^ 1 = 1, 1 ^ 0 = 1, 1 ^ 1 = 0

(4)按位取反运算符(~)

按位取反运算是单目运算,用来求一个位串信息按位的反