C语言实现一个递归函数,将非负整数n转换为二进制后输出
时间: 2023-05-28 16:04:38 浏览: 190
```
#include <stdio.h>
void decimalToBinary(int n) {
if (n > 1) {
decimalToBinary(n / 2);
}
printf("%d", n % 2);
}
int main() {
int n;
printf("请输入一个非负整数:");
scanf("%d", &n);
printf("%d的二进制表示为:", n);
decimalToBinary(n);
printf("\n");
return 0;
}
```
相关问题
编写一个函数采用递归方法将任一正整数转换为二进制形式在主函数中完成数据的输入输出 C语言
可以使用以下递归函数将正整数转换为二进制形式:
```c
void decimalToBinary(int n) {
if (n == 0) {
return;
}
decimalToBinary(n / 2);
printf("%d", n % 2);
}
```
在主函数中,输入一个正整数并调用该函数即可将其转换为二进制形式:
```c
int main() {
int n;
printf("Enter a positive integer: ");
scanf("%d", &n);
printf("Binary representation: ");
decimalToBinary(n);
printf("\n");
return 0;
}
```
注意,这个函数中的递归是自顶向下的,因为我们首先将n除以2并递归调用函数,然后打印n mod 2。最后,当n等于0时,递归返回并结束函数。
输入一个十进制整数,转换成二进制形式输出,要求递归方式实现,使用C语言
好的,以下是使用 C 语言实现的代码示例:
```c
#include <stdio.h>
void decimalToBinary(int num) {
if (num == 0) {
return;
}
decimalToBinary(num / 2);
printf("%d", num % 2);
}
int main() {
int num;
printf("请输入一个十进制整数:");
scanf("%d", &num);
printf("转换成二进制形式为:");
decimalToBinary(num);
printf("\n");
return 0;
}
```
这段代码与上面的 C++ 代码实现思路是一样的,只是语法稍有不同。
在主函数中,我们使用 `scanf()` 函数获取用户输入的十进制整数;
然后,调用 `decimalToBinary()` 函数,将用户输入的整数作为参数传入。
在 `decimalToBinary()` 函数中,我们使用了递归的方式来实现将十进制数转换成二进制的过程。具体来说,我们先判断当前的数是否为 0,如果是,则递归结束,直接返回;如果不是,则递归调用函数自身,将当前数除以 2 的结果作为参数传入,直到最终将数转换成二进制形式。
最后,在每一层递归返回之前,我们使用 `printf()` 函数输出当前数除以 2 的余数,即该位的二进制数值。这样,当递归结束后,整个二进制数就被输出完整了。
希望这个示例能够帮助到您!
相关推荐
![c](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)