2016-01-14 3 views
-5

Comment écrire une solution récursive en C qui le fait? Par exemple, si je l'entrée 9, il devrait sortie 00001001Conversion d'un nombre binaire de 8 bits en un binaire de 8 bits en C récursivement

+0

désolé, faute de frappe a été corrigé – user5792022

+0

Habituellement, lorsque j'écrire un code - je suis assis devant le clavier. Choisis mon nez et gratte mes noix. Avoir un bash. Quand je suis coincé, je poste ce que j'ai écrit jusqu'à présent et je demande de l'aide –

+0

Voir aussi http://stackoverflow.com/q/111928/2410359 http://stackoverflow.com/q/32208150/2410359 et beaucoup d'autres publications – chux

Répondre

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; 
} 
+0

Une belle solution serrée. – chux

+1

Merci pour vos compliments. – BLUEPIXY

+0

Woah .. cryptique un. –