Programación General > C/C++
¿Como mostrar decimales en C?
Saitchev:
Hola, tengo una duda, necesito saber como se puede hacer para elegir cuantos decimales mostrar de un float en un printf, quiero decir, se pide por teclado un numero real, y luego otro entero que definirá el numero de decimales a mostrar del real.
Ejemplo, se introducen el 5.78695 y el 3, el programa debe mostrar 5.786 (solo 3 decimales)
Gracias!
shakka:
--- Código: C ---float a = 235.36558; printf("%.2fn", a);
Precediendole de un . y luego, la cantidad de decimales a mostrar
http://www.cplusplus.com/reference/clib ... io/printf/
Saitchev:
Quizá me has malentendido, no es que quiera mostrar 2 decimales siempre, sino que quiero mostrar N decimales, donde N es un entero que el usuario va a introducir por teclado cada vez que inicie ya el programa, es decir, que una vez puede introducir 3, y mostrará 3 (N) decimales, luego introducirá 5 por ejemplo, y mostrará (N) 5 decimales...
ProfesorX:
Puedes usar sprintf para generar tu cadena formateada, y luego la imprimes con printf de la siguiente manera:
--- Código: C++ --- #include <stdio.h>#include <stdlib.h> int decimales;float numero;char cadena_formateada[256]; int main(){ printf("Numero a leer: "); scanf("%f", &numero); printf("Cuantos decimales: "); scanf("%d", &decimales); sprintf(cadena_formateada, "%%.%dfn", decimales); printf(cadena_formateada, numero); system("pause"); return 0;}
Saludos :)
Saitchev:
Muchas gracias profesor, nunca había oido hablar del "sprintf" en C, quizá por eso le di tantas vueltas y no habia manera de sacarlo.
Supongo que el "sprintf" se usa cuando se quiere imprimir una cadena de caracteres, es asi?
Un saludo.
Navegación
[#] Página Siguiente
Ir a la versión completa