Training2 位操作訓練

2021-07-15 01:56:23 字數 1201 閱讀 1170

training2:位操作訓練

1. 題目:

請編寫乙個c函式

,該函式給出乙個位元組中被置為

1的位的個數。

#include typedef unsigned int uint;

uint count1(uint num)

}return count;

}int main()

2.題目:輸入乙個整數a,再輸入兩個整數p1、p2(p1 ,p2 < 32),輸出該整數的二進位制表示方法中從右端開始的p1到p2位。

#include typedef unsigned int uint;

void output(uint num, uint p1, uint p2)

for(i = 0; i < j; i++)

printf("\n");

}int main()

for(i = j - 1; i >= 0; i--)

printf("\n");

}int main()

for(i = 0; i < j; i++)

printf("\n");

}uint set_num(uint num, uint p, uint v)

else

return num;

}int main()

5.題目:輸入乙個32位的整數a,使用按位異或^運算,生成乙個新的32位整數b,使得該整數b的每一位等於原整數a中該位左右兩邊兩個bit位的異或結果。

#include void func(int num)

else

}temp = i;

while(temp)

sum = bit + sum;

}printf("change:%d\n", sum);

}int main()

6.題目:將任意十進位制轉化為十六進製制進行輸出。

#include char * to16(unsigned int num)

else

num = num >> 4;

}return str;

}int main()

Training2 位操作訓練

include void count1 int a printf 輸入的數共有 d位被置1 n count intmain include intchoosep1 p2 int a,int p1,int p2 printf 輸出結果為 n for n p1 n printf n return0 in...

位操作訓練

1 題目 請編寫乙個c函式,該函式給出乙個位元組中被置為1的位的個數 include int int2bin int num num num 1 return count int main 2 題目 輸入乙個整數a,再輸入兩個整數p1,p2 p1,p2 32 輸出該整數的二進位制表示方法中從右端開始...

位操作訓練

1 題目 請編寫乙個c函式,該函式給出乙個位元組中被置為1的位的個數 include int int2bin int num num num 1 return count int main 2 題目 輸入乙個整數a,再輸入兩個整數p1,p2 p1,p2 32 輸出該整數的二進位制表示方法中從右端開始...