Menu
Coddy logo textTech

Projet : Définir la structure Contact

Fait partie de la section Logique & Flux du Journey C de Coddy. Leçon 50 sur 63.

challenge icon

Défi

Facile

Vous allez créer un outil simple de saisie de contacts qui montre comment les structures peuvent organiser des données connexes dans des applications réelles.

Créez un programme C qui définit une structure Contact pour stocker les informations d’un contact. Votre programme doit :

  1. Définir une structure struct nommée Contact avec les membres suivants :
    • Un tableau de caractères name de taille 50 pour stocker le nom du contact
    • Un tableau de caractères phone de taille 20 pour stocker le numéro de téléphone du contact
    • Un tableau de caractères email de taille 40 pour stocker l’adresse e-mail du contact
    • Un entier age pour stocker l’âge du contact
  2. Dans la fonction main :
    • Créer une variable Contact nommée person
    • Lire les valeurs d’entrée suivantes et les affecter aux membres de la structure à l’aide de l’opérateur point :
      • Lire une chaîne pour le nom et l’affecter à person.name
      • Lire une chaîne pour le numéro de téléphone et l’affecter à person.phone
      • Lire une chaîne pour l’adresse e-mail et l’affecter à person.email
      • Lire un entier pour l’âge et l’affecter à person.age
    • Après avoir lu toutes les valeurs, effectuer les vérifications suivantes :
      • Si l’âge est inférieur à 0 ou supérieur à 120, afficher Invalid age et quitter le programme
      • Si la longueur du numéro de téléphone est inférieure à 10 caractères, afficher Invalid phone number et quitter le programme
    • Si toutes les vérifications réussissent, afficher les informations du contact dans ce format exact :
      • Contact Information:
      • Name: [name]
      • Phone: [phone]
      • Email: [email]
      • Age: [age]
    • Calculer et afficher des informations supplémentaires :
      • Afficher la longueur du nom à l’aide de strlen() au format suivant : Name length: [length]
      • Déterminer la catégorie d’âge et l’afficher :
        • Si l’âge est compris entre 0 et 17 : Category: Minor
        • Si l’âge est compris entre 18 et 64 : Category: Adult
        • Si l’âge est supérieur ou égal à 65 : Category: Senior

Ce défi teste votre compréhension de la définition d’une structure, de la déclaration de membres avec des types de données et des tailles appropriés, de l’accès aux membres d’une structure à l’aide de l’opérateur point, de la validation des entrées et de l’utilisation de fonctions de chaîne comme strlen() avec les membres d’une structure. Vous vous entraînerez à créer une structure de données pratique qui pourrait servir de base à un système de gestion de contacts.

Essayez vous-même

#include <stdio.h>
#include <string.h>

// TODO: Définir la structure Contact ici

int main() {
    // TODO: Créer une variable Contact nommée person
    
    // Lire les valeurs d'entrée
    scanf("%s", /* TODO: assigner à person.name */);
    scanf("%s", /* TODO: assigner à person.phone */);
    scanf("%s", /* TODO: assigner à person.email */);
    scanf("%d", /* TODO: assigner à person.age */);
    
    // TODO: Écrire votre code de validation et de sortie ci-dessous
    
    return 0;
}

Toutes les leçons de Logique & Flux

Entraînez-vous par vous-même : Compilateur C en ligne