Pues resulta ser que que al asignar a "revertido"(int) un valor double, este pierde precisión, la opción que se me ocurrió fue simplemente declarar a "revertido" como double.
Código C:
Ver original#include <math.h>
#include <stdio.h>
void main( void )
{
int numero, contador = 0, ultima_cifra;
double revertido = 0;
printf( "Por favor tipea un numero de cinco digitos y yo lo revertire\n" ); for( contador = 4; contador >= 0; contador-- )
{
ultima_cifra = numero % 10;
numero = numero / 10;
revertido
= revertido
+ ultima_cifra
* pow( 10, contador
); }
printf( "El numero revertido es %.0f", revertido
); }