Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/65.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C语言中8位数字到8位二进制的递归转换_C_Recursion_Binary_Bits - Fatal编程技术网

C语言中8位数字到8位二进制的递归转换

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

我如何用C编写一个递归解决方案来实现这一点?
例如,如果我输入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;
}