A. U.
: 2024-2025
Enseignant : Mohamed GOUSKIR
Programmation en langage C
TP N° 6 : Structures et fonctions
On souhaite gérer les étudiants du tronc commun d’un établissement en utilisant un tableau
de structures permettant l’enregistrement des informations concernant les étudiants (Nom,
Prénom, CNE, Date de naissance et Notes).
Pour cela, on considère les déclarations suivantes :
#define max 50 typdef struct { char nom[20];
typdef struct { int jour; char prenom[20];
int mois; int cne;
int annee; Date naissance;
} Date ; float notes[24];
} Etudiant;
typedef Etudiant Etud[max];
Ecrire un programme c contenant les fonctions suivantes :
void lecture(Etud A,int N) : la saisie des informations pour N étudiants.
void affichage(Etud A,int N) : l’affichage des informations des étudiants.
int valide_semestre(float NT[24],int id_debut,int id_fin) :la fonction retourne 1 si le
semestre est validé et 0 dans le cas inverse.(un semestre est validé si la moyenne de 6
notes (6 modules) est >= 10 et si toutes les notes sont >= 7)
int valide_tous_semestres(Etudiant ETD) :la fonction retourne 1 si l’étudiant a validé tous
les semestres et 0 dans le cas inverse.(il faut utiliser la fonction valide_semestre).
Etudiant* etud_valide_semestres(Etud A,int n) : la fonction retourne un tableau de
structures contenant les informations des étudiants qui ont validés tous les semestres.
Etudiant* etud_ordre_merite(Etud A,int n) : la fonction retourne un tableau de structures
concernant les étudiants qui ont validés tous les semestres classés par ordre de mérite.
void mention(Etud A,int n) : la fonction affiche (le CNE, le nom, le prénom, la moyenne
et la mention) des étudiants qui ont validé tous les semestres par ordre de
mérite.(Passable : 10<=moyenne<12, Assez bien : 12<=moyenne<14, Bien :
14<=moyenne<16 et Très bien : 16<=moyenne).
main() : un jeu d’essais des fonctions précédentes.
PR. MOHAMED GOUSKIR 1