Menu
Coddy logo textTech

Validación de entrada

Parte de la sección Fundamentals del Journey de C de Coddy — lección 35 de 63.

Al aceptar entradas de los usuarios, es importante verificar que la entrada sea válida antes de usarla en su programa.

Para la validación de entrada de enteros, puedes comprobar el valor de retorno de scanf:

int number;
int result = scanf("%d", &number);

La función scanf devuelve el número de elementos leídos con éxito:

if (result == 1) {
    // La entrada se leyó con éxito
    printf("Valid input: %d\n", number);
} else {
    // La entrada no fue válida
    printf("Invalid input!\n");
}

Para la validación de rangos, use sentencias condicionales después de leer la entrada:

if (number >= 1 && number <= 100) {
    printf("Number is within valid range (1-100)\n");
} else {
    printf("Number is outside valid range!\n");
}
challenge icon

Desafío

Fácil

Escribe un programa que lea un entero del usuario y lo valide de dos maneras:

  1. Comprueba si la entrada es realmente un entero (usando el valor de retorno de scanf)
  2. Comprueba si el entero está entre 10 y 50 (inclusive)

Tu programa debe imprimir:

  • "Valid input!" si la entrada es un entero válido entre 10 y 50.
  • "Invalid input type!" si la entrada no es un entero.
  • "Out of range!" si la entrada es un entero pero no está entre 10 y 50.

Hoja de referencia

Para validar la entrada de enteros, compruebe el valor de retorno de scanf:

int number;
int result = scanf("%d", &number);

if (result == 1) {
    // La entrada se leyó correctamente
    printf("Valid input: %d\n", number);
} else {
    // La entrada no era válida
    printf("Invalid input!\n");
}

Para la validación de rangos, utilice sentencias condicionales:

if (number >= 1 && number <= 100) {
    printf("Number is within valid range (1-100)\n");
} else {
    printf("Number is outside valid range!\n");
}

Pruébalo tú mismo

#include <stdio.h>

int main() {
    // Escribe tu código aquí
    
    return 0;
}
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Fundamentals