如题所述
#include <stdio.h>
char *dec2bin(char *x,int n)
{int i,j;
char c;
for(i=-1;n;n/=2)
x[++i]=n%2+'0';
x[i+1]=0;
for(j=0;j<i;)
{c=x[j]; x[j++]=x[i]; x[i--]=c;}
return &x[0];
}
int main()
{char s[33];
printf("%s\n",dec2bin(s,35));
return 0;
}
char *dec2bin(char *x,int n)
{int i,j;
char c;
for(i=-1;n;n/=2)
x[++i]=n%2+'0';
x[i+1]=0;
for(j=0;j<i;)
{c=x[j]; x[j++]=x[i]; x[i--]=c;}
return &x[0];
}
int main()
{char s[33];
printf("%s\n",dec2bin(s,35));
return 0;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答 2013-12-22
#include <stdio.h>
#include <stdlib.h>
void fun(int i)
{
if(i>1)
fun(i/2);
printf("%d",i%2);
}
int main()
{
int n;
scanf("%d",&n);
fun(n/2);
return 0;
}本回答被网友采纳
#include <stdlib.h>
void fun(int i)
{
if(i>1)
fun(i/2);
printf("%d",i%2);
}
int main()
{
int n;
scanf("%d",&n);
fun(n/2);
return 0;
}本回答被网友采纳
第2个回答 2013-12-22
#include<stdio.h>
#include<stdlib.h>
int main()
{
char a[100];
int b;
scanf("%d",&b);
itoa(b,a,2); //转换为2进制输出
printf("%s",a);
}
#include<stdlib.h>
int main()
{
char a[100];
int b;
scanf("%d",&b);
itoa(b,a,2); //转换为2进制输出
printf("%s",a);
}