十进制29976如何换成二进制

来源:百度知道 编辑:UC知道 时间:2024/05/31 09:11:25
(N)2=an-1×2n-1+an-2×2n-2+……+a1×21+a0×20+a-1×2-1+a-2×2-2

+……+a-m×2-m=
要是按照上面的式子则29976可以这样算:2*2^4+9*2^3+9*2^2+7*2^1+6*2^1……对吗?请帮我一下。

十进制转二进制:
用2辗转相除至结果为1
将余数和最后的1从下向上倒序写 就是结果
例如302
302/2 = 151 余0
151/2 = 75 余1
75/2 = 37 余1
37/2 = 18 余1
18/2 = 9 余0
9/2 = 4 余1
4/2 = 2 余0
2/2 = 1 余0
故二进制为100101110

29976除2取佘....

不用这么复杂~!
#include<stdio.h>
void main()
{
int n,a[100]={0},i=0,j;
scanf("%d",&n);
do
{
a[i]=n%2;//这里是二进制转换的表达式阿,课本学过的!
n=n/2;
i++;
}while(n!=0);
for(j=i-1;j>=0;j--)
printf("%d",a[j]);
}

你的算法是2进制转成10进制的方法
十进制转二进制用除2取余法