为了账号安全,请及时绑定邮箱和手机立即绑定

新手!大神求解析该题!

左移运算,右移运算,按位异或!我的思路是把八进制a 十进制a1转成二进制算得出正确答案按位或运算结果!然后左移和右移我移的是a二进制的位!再把移位后的二进制转八或者转十都得不出正确答案!是我哪里错了?58b43a5f0001b91a03600640.jpg
58b43a660001b0e403600640.jpg

正在回答

2 回答

你的太模糊了,给你一个意思差不多的示例吧。

现在有一个一维整型数组arry[16],里面每一个元素存放的是0或者1,然后一共16位,怎么把这个数组转换成一个16进制的整型数

#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;
}

1 回复 有任何疑惑可以回复我~

太模糊了

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

新手!大神求解析该题!

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信