【题目描述】
写一个函数,输入十进制数,转换为二进制数,要求用递归形式。
【输入样例】
5
【输出样例】
101
代码实现
#include <stdio.h>
//将十进制n,转化为二进制输出
int i=0,a[200]={0};
void dectobin(unsigned long int n)
{
i++;
if(n==1)
{
a[i]=1;
return 0;
}
else if(n==0)
{
a[i]=0;
return 0;
}
else if(n%2==0)
{
a[i]=0;
return dectobin(n/2);
}
else
{
a[i]=1;
return dectobin((n-1)/2);
}
}
int main()
{
long int b,k;
scanf("%ld",&b);
dectobin(b);
for(k=i;k>0;k--)
printf("%d",a[k]);
return(0);
}