Red de conocimiento informático - Computadora portátil - Preguntas de programación en lenguaje C, problema de configuración de simetría del código interno.

Preguntas de programación en lenguaje C, problema de configuración de simetría del código interno.

#includelt;iostreamgt;

#includelt;stdio.hgt;

usando el espacio de nombres std;

int panduan(char * s )

{

int i, flag=true;

// Como sabemos que 32 es un número entero, a veces los parámetros pueden ser constantes (como ilt; 16 )

for(i=0;ilt;16;i )

{

si(s[i]!=s[31- i])

{

flag=false;

break; // Si se conoce la asimetría, el bucle puede salir temprano

}

}

bandera de retorno;

}

int main()

{

int a;

int counter=0;

// ¡Existe una diferencia entre cingt; a y scanf("d", amp; a)! =EOF

// Cuando a=-1, el primero pensará que es el final del archivo, pero el segundo no

while(scanf("d", amp ; a) != EOF)

{

char s[32];

for(int i=0; ilt; 32; i)

{

s[i]=a2; // Es mejor usar aamp 1, pensando que las operaciones de bits son más rápidas que las operaciones de módulo

a gt; gt; = 1; // a=a/2 no se puede usar aquí, si a es un número negativo, el bit de signo 1 no se moverá debido a la operación de división

}

if(panduan(s)==1)

contador

}

coutlt;lt;counterlt;lt;endl;

devuelve 0;

}