Técnicas de Entrada con Scanf
Uso Básico de Scanf con Tipos Doble
La función scanf() es un método de entrada potente para leer valores de tipo double en programación C. Comprender sus matices es crucial para un manejo efectivo de la entrada.
| Especificador |
Descripción |
%lf |
Formato estándar para leer valores double |
%f |
También puede funcionar, pero no se recomienda |
Ejemplo de Entrada Simple
#include <stdio.h>
int main() {
double temperatura;
printf("Ingrese la temperatura: ");
scanf("%lf", &temperatura);
printf("Usted ingresó: %.2f\n", temperatura);
return 0;
}
Diagrama de Flujo de Entrada
graph LR
A[Entrada del usuario] --> B[scanf()]
B --> C[Validar la entrada]
C --> D[Almacenar en la variable]
Entrada de Múltiples Valores Doble
#include <stdio.h>
int main() {
double x, y, z;
printf("Ingrese tres números decimales: ");
scanf("%lf %lf %lf", &x, &y, &z);
printf("Números: %.2f, %.2f, %.2f\n", x, y, z);
return 0;
}
Técnicas de Entrada Avanzadas
Entrada Condicional
#include <stdio.h>
int main() {
double valor;
while (1) {
printf("Ingrese un número positivo: ");
if (scanf("%lf", &valor) == 1 && valor > 0) {
break;
}
printf("Entrada inválida. Inténtelo de nuevo.\n");
while (getchar() != '\n'); // Limpiar el búfer de entrada
}
printf("Entrada válida: %.2f\n", valor);
return 0;
}
Errores Comunes
- Siempre utilice
%lf para valores double.
- Verifique el valor devuelto por
scanf().
- Maneje el búfer de entrada cuidadosamente.
Buenas Prácticas
- Valide la entrada.
- Utilice comprobaciones de errores.
- Limpie el búfer de entrada cuando sea necesario.
LabEx recomienda practicar estas técnicas para dominar la entrada de valores double en C.