獲取乙個數二進位制序列中所有的偶數字和奇數字,並輸出。
二進位制序列求法
for (i = 31; num
!= 0; i--)
/*比如num = 10
10% 2 = 0
5% 2 = 1
2% 2 = 0
1% 2 = 1
得二進位制序列為1010
*/
完整**
#include
int main()
; int i = 0;
int num = 0;
printf("請輸入乙個數\n");
scanf("%d", &num);
//換算及輸出二進位制
for (i = 31; num != 0; i--)
printf("二進位制為:");
for (i = 0; i < 32; i++)
printf("\n");
//輸出奇數字
printf("奇數字為:");
for (i = 1; i <= 31; i += 2)
printf("%d", a[i]);
printf("\n");
//輸出偶數字
printf("偶數字為:");
for (i = 0; i <= 30; i += 2)
printf("%d", a[i]);
printf("\n");
return
0;}
獲取乙個數二進位制序列中所有的偶數字和奇數字
問題 獲取乙個數二進位制序列中所有的偶數字和奇數字,分別輸出二進位制序列。基本思路 1.要得到偶數字的輸出需要將偶數字每一位右移到最後一位並按位 1並輸出,32位int型變數最高位偶數字需要右移31位到最後一位,第二位偶數字需要右移29位到最後一位,以此類推知道所有的偶數字輸出。2.要得到奇數字用同...
二進位制輸出所有的子集
參考的書是劉汝佳 演算法競賽入門經典 對於乙個二進位制數,從右往左,第一位代表數字0,第二位代表數字1,第三位代表數字2,以此類推,這樣乙個二進位制數就可以代表乙個子集了。例如0100011000110111表示對應的子集為 最重要的好處是,利用二進位制數表示子集,可以很方便的表示集合的交並補運算。...
二進位制 求乙個數的二進位制表示中1的個數
題目 求乙個正整數x中1的個數 思考 二進位制是乙個01串。統計該串中1的個數。方法1 將x按照樸素的方法轉化成二進位制串,如果x的某二進位制位上為1,則res 求得最後x中1的個數。int x while x return res res即是x的二進位制數中1的個數用這種方法求,時間複雜度為o n...