Ver Mensaje Individual
  #5 (permalink)  
Antiguo 04/01/2008, 02:07
Avatar de Eternal Idol
Eternal Idol
 
Fecha de Ingreso: mayo-2004
Ubicación: Lucentum
Mensajes: 6.192
Antigüedad: 20 años
Puntos: 74
Re: Ayuda de principiante para C

Con 100 da 1 y 2 cifras (dependiendo del return que uses), al ser la ultima cifra 0. Igual no me parece que sea necesario usar un float cuando el numero de cifras es entero. Si tenemos en cuenta que cualquier numero - incluso 0 - tiene al menos una cifra podemos empezar con nuestra variable contador a 1 y despues incrementarla dentro de un bucle que compruebe que el numero sigue siendo mayor a 9 y lo divida por 10.

Generalmente no pongo codigo pero si ya publicaron una forma de hacerlo y no parece que el interesado haya vuelto jamas ...

Código:
int Cifras (int num)
{
  int c = 1;
  for (;num > 9; num /= 10) { c++; }
  return c;
}
PD. Hay un boton de editar abajo del mensaje, lo podes usar en casos como ese para arreglar tu mensaje original.
__________________
¡Peron cumple, Evita dignifica! VIVA PERON CARAJO