【问题标题】:Converting 8-bit number to 8-bit binary in C recursively [duplicate]在C中递归地将8位数字转换为8位二进制[重复]
【发布时间】:2016-01-15 06:15:14
【问题描述】:

我将如何在 C 中编写一个递归解决方案来做到这一点? 比如我输入9,应该输出00001001

【问题讨论】:

标签: c recursion binary bits


【解决方案1】:
#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;
}

【讨论】:

  • 一个不错的紧凑解决方案。
  • 感谢您的夸奖。
猜你喜欢
  • 2018-09-15
  • 2018-06-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多