Module :
Semestre 1
Programmation en
Année : 2024/2025
langage C
TD/TP Nº8 : Les pointeurs
Les objectifs : Manipuler les pointeurs en langage C.
Exercice 1 :
Écrire une fonction swap qui a comme paramètres deux pointeurs vers des entiers et qui
échange le contenu des deux entiers pointés. Tester cette fonction en écrivant un programme
qui échange le contenu de deux entiers a et b en appelant cette fonction.
Exercice 2 :
Écrire une fonction qui a comme paramètres un tableau d'entiers de taille quelconque, la taille
du tableau, et 2 pointeurs vers des entiers min et max. La fonction doit renvoyer dans les entiers
pointés par min et max respectivement les plus petits et les plus grands entiers du tableau.
Exercice 3 :
Écrire une fonction qui a en paramètre une chaîne de caractères et qui renvoie par un return le
nombre d'occurrences de la lettre 'A'. Cette fonction devra parcourir la chaîne en utilisant un
pointeur. Tester cette fonction.
Exercice 4 :
Écrire un programme en langage C qui permet de gérer les informations des étudiants d'une
institution universitaire. Le programme doit être structuré en trois parties :
Partie 1 : Déclaration et utilisation des structures
1. Déclarer une structure DateNaisRepere qui contient les champs suivants :
o jour : un entier représentant le jour de naissance.
o mois : un entier représentant le mois de naissance.
o annee : un entier représentant l'année de naissance.
2. Déclarer une structure EtudiantRepere qui contient les champs suivants :
o nom : un tableau de 50 caractères pour le nom de l'étudiant.
o age : un entier représentant l'âge de l'étudiant.
o note : un entier représentant la note de l'étudiant.
o dateNaissance : un champ de type DateNaisRepere représentant la date de
naissance de l'étudiant.
3. Écrire une fonction lireEtudiant qui lit les informations d'un étudiant à partir de
l'entrée standard.
4. Écrire une fonction afficherEtudiant qui affiche les informations d'un étudiant.
[Link] 1
Partie 2 : Utilisation des tableaux
1. Écrire une fonction lireTableauEtudiants qui lit les informations d'un tableau
d'étudiants de taille spécifiée (exemple tableau de 2 étudiants).
2. Écrire une fonction afficherTableauEtudiants qui affiche les informations d'un
tableau d'étudiants.
Partie 3 : Calcul de la somme des notes avec une fonction récursive
1. Écrire une fonction récursive sommeNotesRecursif pour calculer la somme des notes
des étudiants dans un tableau.
2. Écrire une fonction calculerMoyenne qui utilise la fonction précédente pour calculer
la moyenne des notes des étudiants.
3. Dans le programme principal (main), après avoir lu et affiché les informations des
étudiants, afficher la moyenne des notes.
4. Résultat attendu
Combien d'étudiants voulez-vous entrer ? 2
Lecture des informations pour l'étudiant 1 :
Entrez le nom de l'étudiant : Alami
Entrez l'âge de l'étudiant : 20
Entrez la note de l'étudiant : 12
Entrez la date de naissance (jour mois année) : 15 9 2002
Lecture des informations pour l'étudiant 2 :
Entrez le nom de l'étudiant : Hassan
Entrez l'âge de l'étudiant : 22
Entrez la note de l'étudiant : 16
Entrez la date de naissance (jour mois année) : 10 3 2001
Informations pour l'étudiant 1 :
Alami, 20 ans, 12/20, né le 15/09/2002
Informations pour l'étudiant 2 :
Hassan, 22 ans, 16/20, né le 10/03/2001
La moyenne des notes est : 14.00
[Link] 2