文章
145
粉丝
217
获赞
21
访问
84.3k
#include <stdio.h>
#include <string.h>
int Binary(int d[],int b[],int n)
{
int i = 0,j,k = 0,a,c,num;
while(i < n)
{
for(j = i; j < n;)
{
a = d[j] % 2; //余数
c = d[j] / 2; //商
d[j] = c;
num = a*10+d[j+1];
d[++j] = num;
}
//最后的a的值为一个二进制位
b[k++] = a;
while(d[i] == 0) i++;
}
return k;
}
int main()
{
char s[31];
while(scanf("%s",s) != EOF)
{
int d[31],b[100],n;
for(n = 0; n < strlen(s); n++)
d[n] = s[n]-'0';
int len = Binary(d,b,n);
for(n = len-1; n >= 0; n--)
printf("%d",b[n]);
printf("\n");
}
return 0;
}
登录后发布评论
暂无评论,来抢沙发