Impresión en bits de un entero sin signo

c:
#include <stdio.h>

void despliegaBits( unsigned valor ); /* prototipo */

int main()
{
   unsigned x; /* variable para almacenar la entrada del usuario */

   printf( "Introduzca un entero sin signo: " );
   scanf( "%u", &#038;x );

   despliegaBits( x );
   
   return 0; /* indica terminación exitosa */

} /* fin de main */

/* despliega los bits de un valor entero sin signo */
void despliegaBits( unsigned valor )
{
   unsigned c; /* contador */

   /* define despliegaMascara y desplaza 31 bits hacia la izquierda */
   unsigned despliegaMascara = 1 << 31;

   printf( "%10u = ", valor );

   /* ciclo a través de los bits */
   for ( c = 1; c <= 32; c++ ) {
      putchar( valor &#038; despliegaMascara ? '1' : '0' );
      valor <<= 1; /* desplaza valor 1  hacia la izquierda */   

      if ( c % 8 == 0 ) { /* despliega espacio después de 8 bits */
         putchar( ' ' );
      } /* fin de if */

   } /* fin de for */

   putchar( '\n' );
} /* fin de la función despliegaBits */
¿Ya le viste algún error? Dejanos tu correción ;-)

Antes de comentar: Gran parte de los ejercicios propuestos no tienen librerías debido a que Wordpress elimina los tags HTML. Si sabes/tienes/conoces las librerías que hacen falta, déjalo en los comentarios.

Otro punto antes de comentar, Si vas a sugerir un segmento de código en algún lenguaje debes hacerlo así:

De esta manera el código sale coloreado.

Otro punto importante para muchos que sienten que se les ignora: Todos los comentarios los reviso y en su debido momento los apruebo, pero ojo con el último párrafo.

Para poner los símbolos de las librerías sin que desaparezcan, debes escribir los símbolos de mayor > y menor qué < con su entidad HTML correspondiente, así como el símbolo de &

Mis Algoritmos se reserva el derecho de alterar, publicar o no los comentarios así como cambiar estas reglas de uso.

Si estas de acuerdo, adelante puedes comentar :)

P.D. No le hago tareas a nadie, mejor hagan la mía :P