Les structures
Open Source Your Knowledge, Become a Contributor
Technology knowledge has to be shared and made accessible for free. Join the movement.
Exercice 2
Les structures suivantes sont définies :
struct date {
int jour;
int mois;
int annee;
}
struct contact {
char nom[20];
char prenom[20];
char adresse[100];
char numero[10];
char localite[50];
int CP;
struct date naissance;
}
Il faut écrire la fonction encode_contact
. Celle-ci doit permettre l'encodage d'une structure contact en vérifiant les données fournie par l'utilisateur.
Contraintes sur les données
Les données doivent respecter les conditions suivantes :
- Le nom doit uniquement être composé des caractères de A à Z et de a à z.
- Le prénom doit uniquement être composé des caractères de A à Z et de a à z.
- L'adresse ne possède aucune contrainte particulière.
- Le numéro ne peut être composé que de chiffre et des caractères de A à Z.
- Le code postal est une valeur numérique comprise entre 1000 et 9999.
- La localité doit uniquement être composé des caractères de A à Z et de a à z.
- La date de naissance doit être une date valide.
Notes complémentaires
- Il est conseillé d'écrire des fonctions supplémentaires pour tester les valeurs.
- La fonction
scanf
lors de la saisie d'une chaîne de caractères coupe entre les espaces. - Penser à l'utilisation de
fgets
pour saisir une chaîne. - La bibliothèque
ctype.h
renferme des fonctions utiles pour réaliser des tests : voir les références - Votre fonction de saisie ne doit comporter aucun affichage même pour poser la question à l'utilisateur.
- Les données sont fournies dans cet ordre à votre programme :
- Nom
- Prénom
- rue
- Numéro
- Localité
- Code postal
- Date de naissance
Encode contact
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
struct date {
int jour;
int mois;
int annee;
};
struct contact {
char nom[20];
char prenom[20];
char adresse[100];
char numero[10];
char localite[50];
int CP;
struct date naissance;
};
void encode_contact(struct contact *personne) {
//Ecrire le code de la fonction
}
Enter to Rename, Shift+Enter to Preview
Open Source Your Knowledge: become a Contributor and help others learn. Create New Content