C語言中使用位運算編寫程式

2021-07-25 10:42:48 字數 1029 閱讀 1799

1.

一組資料中只有乙個數字出現了一次。

其他所有數字都是成對出現的。請找出這個數字。(使用位運算)

分析:要找出一組資料中單獨的數,就將陣列中的每個數全都取異或運算。

程式如下:

#include#includeint main()

; int i = 0;

int sz = sizeof(arr) / sizeof(arr[0]);

for (i = 1; i < sz; i++)

printf("the single number is:%d", arr[0]);

system("pause");

return 0;

}

2..不使用(a+b)/2這種方式,求兩個數的平均值。

分析:將某個數的二進位制形式右移一位相當於該數除以二。

程式如下:

#include#includeint main()

3.編寫函式:

unsigned int  reverse_bit(unsigned int value);

這個函式的返回 值value的二進位制位模式從左到右翻轉後的值。

程式如下:

pow(2,i)表示2的i次方。

#include#include#includeunsigned int reverse_bit(unsigned int value)

return sum;

}int main()

4.程式設計實現:

兩個int(32位)整數m和n的二進位制表達中,有多少個位(bit)不同?

程式如下:

#include#include#includeint main()

printf("count=%d", count);

system("pause");

return 0;

}

C語言編寫程式計時

在我們程式設計的時候,有時候需要我們去監測程式執行的時間問題,尤其是在做加速或者做優化的時候,乙個程式執行的時間也許就是我們判斷程式好壞的標準,所以我們有時候要進行計時。因為用到了,所以做個記錄方便下次檢視 include stdio.h include time.h clock t start t...

C語言中的位運算

0 推薦 在電腦程式中,資料的位是可以操作的最小資料單位,理論上可以用 位運算 來完成所有的運算和操作。一般的位操作是用來控制硬體的,或者做資料變換使用,但是,靈活的位操作可以有效地提高程式執行的效率。c語言提供了位運算的功能,這使得c語言也能像組合語言一樣用來編寫系統程式。位運算子c語言提供了六種...

C語言中的位運算

c語言中的位運算有六個 按位與 按位或 按位異或 取反 左移 右移 除 以外其餘均為二元運算子,即要求運算子兩側均有乙個運算量 位運算量只能為整型或字元型,不能為實型資料。1.按位與 0 0 0 0 1 0 1 0 0 1 1 1 3 5 00000011 00000101 00000001 1 的...