递归实现十进制转二进制:输入一个正整数 n,将其转换为二进制后输出。要求定义并调用函数 dectobin(n),它的功能是输出 n 的二进制。试用C语言编写相应程序。
时间: 2024-02-18 21:05:09 浏览: 91
十进制转换二进制递归法.c
好的,以下是C语言递归实现十进制转二进制的代码:
```c
#include <stdio.h>
void dectobin(int n) {
if (n / 2 != 0) {
dectobin(n / 2);
}
printf("%d", n % 2);
}
int main() {
int n = 10;
printf("%d的二进制为:", n);
dectobin(n);
printf("\n");
return 0;
}
```
在上面的代码中,我们定义了一个`dectobin()`函数来实现递归将十进制数转换为二进制数的功能。首先,我们判断n是否可以被2整除,如果可以,则递归调用`dectobin(n / 2)`函数,这样就能够把n转换成二进制数的高位。然后,我们输出n除以2的余数,这就是n的二进制数的低位。
在`main()`函数中,我们先设置n的值为10,然后调用`dectobin()`函数来转换n为二进制数,并输出结果。
阅读全文