structures c
TRANSCRIPT
-
1- Donner les dclarations des structures suivantes :
1. date : numro du jour, nom du mois, anne; 2. point : coordonnes (entires) d'un point; 3. rect : coordonnes d'un rectangle (cts horizontaux); 4. segment : segment entre deux points.
2- crire le corps d'une fonction AfficheDate affichant la date passe
en paramtre.
Prototype : void AfficheDate( date *dp );
3- crire une fonction DemandeDate demandant une date au clavier
et remplissant les champs de la structure passe.
Prototype : void DemandeDate( date *dp );
4- crire une fonction NumeroMois retournant l'entier compris entre 1
et 12 correspondant au numero du mois dont le nom est pass. Si le
mois n'existe pas, NumeroMois doit retourner -1.
Prototype : int NumeroMois( char *nommois ); A l'aide de cette
fonction, amliorer la fonction DemandeDate afin qu'elle vrifie que
la date entre est correcte.
5- crire une fonction CompareDates prenant deux dates d1 et d2 et
retournant -1 si d1 est avant d2, 1 si d1 est aprs d2, ou 0 si les deux
dates sont gales.
Prototype : int CompareDates( date *d1, date *d2 );
1- crire une fonction
-
int EnregistreDates( date d[], int N, char *nomfichier );
qui sauvegarde un tableau d de N dates dans un nouveau fichier texte.
La fonction retournera 1 en cas de succs, 0 en cas d'chec (erreur).
Chaque ligne du fichier texte contiendra une date: jour, mois, anne.
2- crire une fonction int LireDates( date d[], int nbmax, char *nomfichier );
qui relise dans le tableau d les dates sauvegardes dans le fichier
spcifi par nomfichier par EnregistreDates. LireDates retournera le
nombre de dates lues. nbmax spcifie la taille du tableau, donc le
nombre maximum d'lments lire.
L'algorithme de tri par slection permet de trier les
lments d'un tableau par ordre croissant (ou dcroissant). Il peut tre
dcrit comme suit, pour un tableau T de N lments :
Pour i = 0 N-1 faire
chercher l'lment le plus petit dans l'intervalle i, ..., N et
l'changer avec l'lment T[i].
1- Drouler la main l'algorithme sur l'exemple suivant : { 1, 9, 2, 1,
7 }.
2- crire une fonction TriEntiers triant un tableau de N entiers.
Prototype : void TriEntiers( int T[], int N );
3- crire une fonction TriDates triant un tableau de N dates (dfinies
comme dans l'exercice 1), en utilisant la fonction CompareDates
Prototype : void TriDates( date T[], int N );