gpt4 book ai didi

c++ - 如何将十进制数数组转换为二进制数数组?

转载 作者:行者123 更新时间:2023-11-30 19:51:50 26 4
gpt4 key购买 nike

*我的数组是

int array{9} = { 2 ,2, 10 , 3 , 1, 15, 12, 6 ,1};

我试图将其转换为二进制数组,应该类似于

int array2[35]= {0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0,0, 0, 1, 1, 0, 0, 0, 1};

我使用的代码是:

double decimal2Binary(long m)
{
int remainder;
long binary = 0, i = 1;
while(m != 0)
{
remainder = m%2;
m = m/2;
binary= binary + (remainder*i);
i = i*10;
}
return binary;
}

问题是,当我将 2 转换为二进制时,输出是 10。但我希望它是 0010,类似地,对于 7,它给出 111 代替 0111。我还需要做什么。请帮忙*

最佳答案

如果我理解你的代码,从 int=7 你想要一个 int=111 (100+10+1) ,打印时显示为 0111。这是一个格式问题,而不是转换问题,看看 printf( ) 如何添加最多 4 位的前导零。

关于c++ - 如何将十进制数数组转换为二进制数数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35267818/

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