¿Cómo programar binario?

# incluir ltstdio.h gt

void main()

{

int a[32], x, I, m;

int change(int x, int a[]); //Declaración de función

scanf("d", ampx);

m = change(x, a);

for(I = 0;iltm;i)

printf("d ",a[I]);

}

int change(int x, int a[])// Debe ser coherente con la declaración de la función, por lo que int x e int a[] también deben completarse más adelante.

{

int n=0, t, k

hacer { a[n]= x 2

x=; (Entero sin signo) x gt gt1; // Considerando que el parámetro int x puede ser un número negativo, no se permite completar x=x/2.

//Si x gt if=0, está bien completar x=x/2. De hecho, calculo que la intención original del interrogador aquí es completar x/2, pero si x es un número negativo,

// cometerá un error o completará x=(unsigned int)x/2, pero x=(unsigned int La eficiencia operativa de )x/2 es mucho menor que x = (unsigned int)x gt1; Hay muchas cosas involucradas aquí que no se pueden explicar en unas pocas palabras.

//Si desea saber el motivo, se recomienda volver a la conversión de tipo forzada de Tan Haoqiang, la representación binaria de números positivos y negativos y cambiar tres puntos de conocimiento.

n;

} while(x!=0);

//do... while() esta función almacena los bits binarios de este número en esta matriz.

for(k = 0;k ltn/2;k){

t = a[k];

a[k]= a[n-k -1];//Realizar el intercambio de 2 números en la matriz.

a[n-k-1]= t;

//El bucle for es una secuencia de intercambio. Por ejemplo, x=11 es el código binario 1011. Estos cuatro códigos se almacenan en a[3] a[2] a[1] a[0] al mismo tiempo, pero todos se generan.

}

Return n; //El valor de retorno es el número de datos útiles en la matriz.

}

Este código ha sido verificado mediante cálculos informáticos y no hay absolutamente ningún problema. Si crees que es bueno, adóptalo, gracias.

dy>