C语言中8位数字到8位二进制的递归转换
我如何用C编写一个递归解决方案来实现这一点?C语言中8位数字到8位二进制的递归转换,c,recursion,binary,bits,C,Recursion,Binary,Bits,我如何用C编写一个递归解决方案来实现这一点? 例如,如果我输入9,它应该输出00001001对不起,当我写代码时,打字错误通常是固定的-我坐在键盘前面。挖我的鼻子,抓我的坚果。狂欢一下。当我陷入困境时,我会发布我到目前为止所写的内容,并寻求帮助,同时也会看到和许多其他类似的帖子,这是一个很好的解决方案。谢谢你的夸奖。 #include <stdio.h> #include <stdint.h> void p(uint8_t n, int times){ if(t
例如,如果我输入9,它应该输出00001001对不起,当我写代码时,打字错误通常是固定的-我坐在键盘前面。挖我的鼻子,抓我的坚果。狂欢一下。当我陷入困境时,我会发布我到目前为止所写的内容,并寻求帮助,同时也会看到和许多其他类似的帖子,这是一个很好的解决方案。谢谢你的夸奖。
#include <stdio.h>
#include <stdint.h>
void p(uint8_t n, int times){
if(times){
p(n >> 1, times-1);
putchar("01"[n & 1]);
}
}
void print_bin8(uint8_t num){
p(num, 8);
}
int main(void){
print_bin8(9);
return 0;
}