#include<stdio.h>
void itob(int n,char s[], int b)
{
int i=1;
for(;i<=32;i++) //共循环了32次,保证得到32位的二进制数
{
s[i-1]= n % b; //数组是从编号0开始的,一直到编号31结束
n = n/b ; //用模除的方法依次得到每位进制数
}
for(i=32;i>0;i--)
{
printf("%d",s[i-1]);
}
}
int main()
{
char ret[32];
char s[32];
int i=0;
int n=0;
scanf("%d",&n);
itob(n,s, 2); //此时进制b=2
return 0;
}【详解】C语言:编写一个函数itob(int n,char s[], int b),将整数n转换为以b进制的数。保存到s中。
原文:http://10740184.blog.51cto.com/10730184/1706404