#include #include #include int main(int argc, char *argv[]){ char cadena[20]; int numero; printf("\nIntroduce un número para mostrar: "); scanf("%d", &numero); printf("\nEl número en decimal es %d", numero); printf("\nEl número en octal es %o", numero); printf("\nEl número en hexadecimal es %x", numero); // Opción 1 // itoa(numero, cadena, 2); printf("En binario es : %s"); /* Opción 2 // * C++ version 0.4 char* style "itoa": // * Written by Lukás Chmela // * Released under GPLv3. int base = 2; char* itoa(int numero, char* cadena, int base) { // check that the base if valid if (base < 2 || base > 36) { *cadena = '\0'; return cadena; } char* ptr = cadena, *ptr1 = cadena, tmp_char; int tmp_value; do { tmp_value = numero; numero /= base; *ptr++ = "zyxwvutsrqponmlkjihgfedcba9876543210123456789abcdefghijklmnopqrstuvwxyz" [35 + (tmp_value - numero * base)]; } while ( numero ); // Apply negative sign if (tmp_value < 0) *ptr++ = '-'; *ptr-- = '\0'; while(ptr1 < ptr) { tmp_char = *ptr; *ptr--= *ptr1; *ptr1++ = tmp_char; } return cadena; } */ /* Opción 3 */ int bin[8]; int aux; printf("\nEl número en binario es "); for (aux = 7; aux >= 0; aux--) { if (numero % 2 == 0) bin[aux] = 0; else bin[aux] = 1; numero = numero / 2; } for (aux = 0; aux < 8; aux++) printf("%d ", bin[aux]); printf("\n"); return 0; }