本题要求实现一个函数,将非负整数n转换为二进制后输出。 函数接口定义: void dectobin( int n ); 函数dectobin应在一行中打印出二进制的n。建议用递归实现。
时间: 2024-05-31 11:07:36 浏览: 31
进制转换 把一个任意的十进制正整数 N 转换成 d 进制数。 N 是一个正整数,d 是一个大于 1 小于 10 的整数,二者均由用户输入,且两数字用换行分隔。
递归实现dectobin函数:
void dectobin(int n){
if(n>1) //当n大于1时,递归调用函数
dectobin(n/2);
printf("%d",n%2); //输出n的二进制位
}
主函数中调用:
int main(){
int n;
scanf("%d",&n);
dectobin(n);
return 0;
}
举例说明:当输入n=13时,dectobin函数的调用过程如下:
dectobin(6)
dectobin(3)
dectobin(1)
输出结果为:1101
阅读全文