x x 1 表示式的意義

2021-08-30 22:11:54 字數 495 閱讀 9496

/*

* 求下面函式的返回值(微軟) -- 統計1的個數

* int a = 65536 + 1024 + 8 + 1;

int c =getc(a);  

system.out.println(c);

* 將x轉化為2進製,看含有的1的個數。

注: 每執行一次x = x&(x-1),會將x用二進位制表示時最右邊的乙個1變為0,

因為x-1將會將該位(x用二進位制表示時最右邊的乙個1)變為0。

* */

public static int getc(int x)

return countx;}/*

* 判斷乙個數(x)是否是2的n次方

* 注:

(1) 如果乙個數是2的n次方,那麼這個數用二進位制表示時其最高位為1,其餘位為0。

(2) == 優先順序高於 &

* */

static int func(int x)

注:從c語言而來

x x 1 表示式的意義

求下面函式的返回值 微軟 統計1的個數 int func int x return countx 假定x 9999 10011100001111 答案 8 思路 將x轉化為2進製,看含有的1的個數。注 每執行一次x x x 1 會將x用二進位制表示時最右邊的乙個1變為0,因為x 1將會將該位 x用二...

x x 1 表示式的意義

求下面函式的返回值 微軟 統計1的個數 int func int x return countx 假定x 9999 10011100001111 答案 8 思路 將x轉化為2進製,看含有的1的個數。注 每執行一次x x x 1 會將x用二進位制表示時最右邊的乙個1變為0,因為x 1將會將該位 x用二...

x x 1 表示式的意義

2007 12 04 20 13 求下面函式的返回值 微軟 統計1的個數 int func int x return countx 假定x 9999 10011100001111 答案 8 思路 將x轉化為2進製,看含有的1的個數。注 每執行一次x x x 1 會將x用二進位制表示時最右邊的乙個1變...