新手!大神求解析該題!
左移運算,右移運算,按位異或!我的思路是把八進制a 十進制a1轉(zhuǎn)成二進制算得出正確答案按位或運算結(jié)果!然后左移和右移我移的是a二進制的位!再把移位后的二進制轉(zhuǎn)八或者轉(zhuǎn)十都得不出正確答案!是我哪里錯了?
左移運算,右移運算,按位異或!我的思路是把八進制a 十進制a1轉(zhuǎn)成二進制算得出正確答案按位或運算結(jié)果!然后左移和右移我移的是a二進制的位!再把移位后的二進制轉(zhuǎn)八或者轉(zhuǎn)十都得不出正確答案!是我哪里錯了?
2017-02-27
舉報
2017-04-16
你的太模糊了,給你一個意思差不多的示例吧。
現(xiàn)在有一個一維整型數(shù)組arry[16],里面每一個元素存放的是0或者1,然后一共16位,怎么把這個數(shù)組轉(zhuǎn)換成一個16進制的整型數(shù)
#include<stdio.h>
char hex[17] = "0123456789ABCDEF";
int main(){
int a[16] = {0}, sum = 1, total = 0, i;
for(i = 0; i < 16; ++i){
scanf("%d", &a[i]);
}
for(i = 0;i < 16; ++i){
if(a[i]){
sum <<= (4-((i+1)%4 ? (i+1)%4 : 4));
total += sum;
sum = 1;
}
if((i+1)%4 == 0){
printf("%c", hex[total]);
sum = 1;
total = 0;
}
}
return 0;
}
2017-02-28
太模糊了