gpt4 book ai didi

二进制值的 C 数组

转载 作者:太空宇宙 更新时间:2023-11-04 06:54:19 25 4
gpt4 key购买 nike

这是我在函数 main 中的 C 代码:

int numbers[8] = {0,1,1,0,1,0,0,1}; 
int i = 7;
int value = 0;
while (i > -1){
if (i == 7){
if (numbers[i] == 1){
value += 1;
}
} else if (i == 6){
if (numbers[i] == 1){
value += 2;
}
} else if (i == 5){
if (numbers[i] == 1){
value += 4;
}
} else if (i == 4){
if (numbers[i] == 1){
value += 8;
}
} else if (i == 3){
if (numbers[i] == 1){
value += 16;
}
} else if (i == 2){
if (numbers[i] == 1){
value += 32;
}
} else if (i == 1){
if (numbers[i] == 1){
value += 64;
}
} else if (i == 0){
if (numbers[i] == 1){
value += 128;
}
}
i--;
}
printf("%d\n", value);

有没有更好的方法来显示数组数字中的十进制数?数组数字表示十进制值:105,二进制。

最佳答案

int multiplier = 1;
int value = 0;
for (int i = 7; i >= 0; i--)
{
value += (numbers[i] * multiplier);
multiplier *= 2;
}

printf("%d\n", value);

关于二进制值的 C 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47046175/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com