0% ont trouvé ce document utile (0 vote)
108 vues25 pages

Structures

Une structure est un type de données composé de variables de types différents représentant le même objet. On accède aux membres d'une structure en utilisant le point ou la flèche.

Transféré par

troxx
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
108 vues25 pages

Structures

Une structure est un type de données composé de variables de types différents représentant le même objet. On accède aux membres d'une structure en utilisant le point ou la flèche.

Transféré par

troxx
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Les structures

Brahimi Mohamed
Structures

Tableau : est collection de variables de même type

Structure : Collection de variables de différents types

Représentation des entités composés


Exemples

● Etudiant
– Nom : Chaîne de caractères
– Age : Entier
– Note : Réel
● Des différents types représentant le même objet
 Produit
– Référence : Entier
– Designation : Chaîne de carctères
– Quantité : Enntier
Exemples

● Etudiant
– Nom de l'étudiant
– Age
– Note
Etudiant

Brahimi Mohamed Age = 27 Note=20


Définition (Algorithmique)

Type nom_de_structure = Structure


Nom_de_member1 : type1
Nom_de_member2 : type2
...
Nom_de_memberN : typeN
Fin
Exemple (Algorithmique)

Type Etudiant = Structure


Nom: Chaîne de caractères
Age : Entier
Note : Réel
Fin
Définition (langage C)

Struct nom_de_structure {
type1 Nom_de_member1 ;
type2 Nom_de_member2 ;
...
typeN Nom_de_memberN ;
} ;
Exemple (langage C)

Struct Etudiant {
char Nom[30] ;
int Age ;
float Note ;
} ;
Déclaration (Algorithmique)

nom de variable : nom_de_structure

● Exemples :
etud : Etudiant
Déclaration (langage C)

struct nom_de_structure nom_de_variable;

● Exemple :
struct Etudiant etud ;
Déclaration (langage C)

Typedef struct nom_de_structure nom_de_structure


nom_de_structure nom_de_variable;

● Exemple :
Typedef struct Etudiant Etudiant
Etudiant etud ;
Manipulation (Algorithmique)

nom_de_variable . nom_de_memeber
● Exemple :
[Link] = 20
[Link] = 19
lire([Link])
Manipulation (langage C)

nom_de_variable . nom_de_memeber 
● Exemple :
[Link] = 20 ;
[Link] = 19 ;
scanf("%d",&[Link]) ;
Exemple (Algorithmmique)

● Gestion des notes des étudiants


– Tableau des étudiants.
– Remplir les informations.
– Affichage des étudiants.
– Calcule de la moyenne.
Exemple (Algorithmmique)

Algorithme Exemple
Type Etudiant= Structure
nom : chaîne de caractères 
note : réel
Fin
Var
etudiants : tableau[1..100] d'Etudiant
Procédure Remplir
Procédure Remplir(Var etds : tableau[1..100] d'Etudiant,n:entier)
Var etd : Etudiant
Début
Ecrire("Tapez la liste des étudiants avec les notes : ")
Pour i allant de 1 à n faire
Dpour
Ecrire("Nom : ")
Lire([Link])
Ecrire("Note : ")
Lire([Link])
etds[i] ←- etd
Fpour
Fin
Procédure Affichage

Procédure Affichage (etds : tableau[1..100] d'Etudiant,n:entier)


Var etd : Etudiant
Début
Ecrire("Liste d'étudiants :")
Pour i allant de 1 à n faire
Dpour
etd ←--etds[i]
Ecrire([Link]," : ",[Link])
Fpour
Fin
Fonction Moyenne

Fonction Moyenne (etds : tableau[1..100] d'Etudiant,n:entier)


Var etd : Etudiant
somme : Entier
Début
somme <--- 0
Pour i allant de 1 à n faire
Dpour
somme <--- somme + etds[i].Note
Fpour
Moyenne <--- somme/n ;
Fin
Algorithme Exemple
Type Etudiant= Structure
nom : chaîne de caractères 
note : réel
Fin
Var etudiants : tableau[1..100] d'Etudiant
n : Entier
Procédure Remplir(Var etds : tableau[1..100] d'Etudiant,n:entier)
Procédure Affichage (Var etds : tableau[1..100] d'Etudiant,n:entier)
Fonction Moyenne (Var etds : tableau[1..100] d'Etudiant,n:entier)
Début
Ecrire("Donnez le nombre d'étudiants")
Lire(n)
Remplir(etudiants,n)
Affichage(etudiants,n)
Ecrire("Moyenne = ",Moyenne(etudiants,n))
Fin
Pointeur sur une Structure

● Une variable qui contient l'adresse d'une structure.

● Algorithmique
– nom_de_pointeur : Pointeur(Nom_de_structure)
● Langage C
– Struct nom_de_structure * nom_de_pointeur ;
Pointeur sur une Structure

● Les opérateur « & » et « * » sont utilisés comme dans les


variable.

● Exemple :
– PtrEtudiant : Pointeur(Etudiant)
– struct Etudiant *PtrEtudiant ;
Pointeur sur une Structure

● Pour accéder aux members des structures (Algorithmique).

● Exemple :
– PtrEtudiant : Pointeur(Etudiant)
– valeur(PtrEtudiant).Note=15
Pointeur sur une Structure

● Pour accéder aux members des structures (C).

● Exemple :
– struct Etudiant *ptrEtudiant ;
– *(PtrEtudiant).Note=15
– PtrEtudinat ->Note =15
Résumé

● Une structure est un type de variable personnalisé défini


par le programmeur.

● Une structure est composée de « sous-variables » qui sont


en général des variables de type de base.
Résumé

● On accède à un des composants de'une structure en utilisant :

nom_de_structure.prenom
● On accède à un des composants d'une structure àtravers un
pointeur en utilsant :

*(pointeurStructure) . prenom
pointeurStructure->prenom

Vous aimerez peut-être aussi