Validation des entrées
Fait partie de la section Fondamentaux du Journey C de Coddy. Leçon 35 sur 63.
Lorsque vous acceptez des entrées d'utilisateurs, il est important de vérifier que l'entrée est valide avant de l'utiliser dans votre programme.
Pour la validation de la saisie d'un entier, vous pouvez vérifier la valeur de retour de scanf :
int number;
int result = scanf("%d", &number);La fonction scanf retourne le nombre d'éléments lus avec succès :
if (result == 1) {
// L'entrée a été lue avec succès
printf("Valid input: %d\n", number);
} else {
// L'entrée était invalide
printf("Invalid input!\n");
}Pour la validation de plage, utilisez des instructions conditionnelles après avoir lu l'entrée :
if (number >= 1 && number <= 100) {
printf("Number is within valid range (1-100)\n");
} else {
printf("Number is outside valid range!\n");
}Défi
FacileÉcrivez un programme qui lit un entier saisi par l’utilisateur et le valide de deux façons :
- Vérifier si l’entrée est bien un entier (en utilisant la valeur de retour de scanf)
- Vérifier si l’entier est compris entre 10 et 50 (inclus)
Votre programme doit afficher :
- "Valid input!" si l’entrée est un entier valide compris entre 10 et 50.
- "Invalid input type!" si l’entrée n’est pas un entier.
- "Out of range!" si l’entrée est un entier, mais qu’il n’est pas compris entre 10 et 50.
Essayez vous-même
#include <stdio.h>
int main() {
// Écrivez votre code ici
return 0;
}Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Fondamentaux
2Variables
Types de donnéesEntierVirgule flottante - DoubleCaractèresBooléensConstantesBases de printfRègles de nommage des variablesConversion de type - Partie 1Conversion de type - Partie 2Défi récapitulatif5Entrées et sorties
Spécificateurs de formatBases de scanfDéfi récapitulatif n° 1Validation des entréesDéfi récapitulatif n° 23Opérateurs
Opérateurs arithmétiquesOpérateur moduloIncrémentation/DécrémentationOpérateurs d’affectationOpérateurs relationnelsOpérateurs logiques — Partie 1Opérateurs logiques — Partie 2Opérateurs logiques — Partie 3Défi récapitulatifEntraînez-vous par vous-même : Compilateur C en ligne