啊...原來我不會補數啊= =
奇怪負數原來不是只有頭一個bit 是1 嗎XD
我真是無顏以對江東父老 Orz
還有呢, 最後兩行是一樣的啊 Orzvoid printBinary(int num) {
for (int i = sizeof(int) * 8 - 1; i >= 0; i--) {
printf("%d", (num >> i) & 1);
}
printf("\n");
}
int bitwiseComplement(int n) {
if (n==0)
return 1;
int mask=0;
int cnt=0;
while (mask < n)
mask=mask | (1<<cnt++);
return (mask) ^ (n);
// return (~mask) ^ (~n);
}
沒有留言:
張貼留言