用c程序使用递归实现将一个整数打印为二进制数
时间: 2023-04-03 19:00:26 浏览: 60
可以使用以下的 C 语言代码实现将一个整数打印为二进制数:
```c
#include <stdio.h>
void printBinary(int n) {
if (n > 1) {
printBinary(n / 2);
}
printf("%d", n % 2);
}
int main() {
int n = 42;
printf("%d 的二进制表示为:", n);
printBinary(n);
printf("\n");
return ;
}
```
输出结果为:
```
42 的二进制表示为:101010
```
希望能够帮助到你!
相关问题
C语言实现一个递归函数,将非负整数n转换为二进制后输出
```
#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时,递归返回并结束函数。