題目:取一個整數 a 從右端開始的 4~7 位。 程式分析:可以這樣考慮: (1)先使 a 右移 4 位。 (2)設置一個低 4 位全為 1,其餘全為 0 的數,可用~(~0<<4) (3)將上面二者進行 & 運算。 實例: 1 #include <stdio.h> 2 int main() 3 { ...
題目:取一個整數 a 從右端開始的 4~7 位。
程式分析:可以這樣考慮:
(1)先使 a 右移 4 位。
(2)設置一個低 4 位全為 1,其餘全為 0 的數,可用~(~0<<4)
(3)將上面二者進行 & 運算。
實例:
1 #include <stdio.h> 2 int main() 3 { 4 unsigned a,b,c,d; 5 printf("請輸入整數:\n"); 6 scanf("%o",&a); 7 b=a>>4; 8 c=~(~0<<4); 9 d=b&c; 10 printf("%o\n%o\n",a,d); 11 return 0; 12 }
以上實例輸出結果為:
請輸入整數: 36 36 1
感謝你的閱讀,請用心感悟!希望可以幫到愛學習的你!!分享也是一種快樂!!!請接力。。。