34 0 57KB
Module Licence Tuteur
: Algorithmique et programmation C : LASTIC : Mme O. Belkahla Driss
Série N°3 – Chapitre 2 Les types composés Exercice n°1 : Ecrire un programme qui permet de : − Créer la structure « fiche » constituée des éléments suivants : nom : de type caractère (taille=10) prenom : de type caractère (taille=10) age : de type entier note : de type float − saisir une fiche − l’afficher. #include struct fiche { char nom[10] ; char prenom[10] ; int age ; float note ; }; main() { struct fiche f ; printf("saisie d’une fiche \n”) ; printf("Nom : "); scanf("%s", f.nom); printf("Prénom : "); scanf("%s", f.prenom); printf("Age : "); scanf("%d", &f.age); printf("Note : "); scanf("%f", &f.note); printf("lecture de la fiche \n”) ; printf("Nom : %s Prénom : %s Age : %d Note : %f \n”, f.nom, f.prenom, f.age, f.note) ; } 2ème solution : en définissant un nouveau type struct. #include typedef struct { char nom[10] ; char prenom[10] ; int age ; float note ; } fiche; main() { fiche f ; printf("saisie d’une fiche \n”) ; printf("Nom : "); scanf("%s", f.nom); printf("Prénom : "); scanf("%s", f.prenom); printf("Age : "); scanf("%d", &f.age); printf("Note : "); scanf("%f", &f.note); printf("lecture de la fiche \n”) ; printf("Nom : %s Prénom : %s Age : %d Note : %f \n”, f.nom, f.prenom, f.age, f.note) ; }
Module Licence Tuteur
: Algorithmique et programmation C : LASTIC : Mme O. Belkahla Driss
Exercice n°2 : Ecrire un programme qui permet de : − Créer une structure « point » constituée des éléments suivants : num : de type entier x : de type float y : de type float − saisir 4 points − les ranger dans un tableau − puis les afficher.
Exercice n°3 : Calculer les moyennes de n étudiants (n≤30) saisis dans un tableau sachant que chaque étudiant est caractérisé par un nom, une note de DS et une note d’examen. Algorithme Traitement_Etudiant Debut Constante Nmax =30 Type Etudiant = Structure nom : chaine de caractère Ds, Ex : réel Fin Structure Type TAB=Tableau [1..Nmax] de Etudiant Variable t : TAB i : entier /*Demande du nombre d’etudiants*/ répéter Ecrire(″Donner le nombre d’etudiants″) Lire(n) jusqu’à (n dans [0..Nmax]) /*Remplissage du Tableau*/ Pour i de 1 à n faire Ecrire(″Donner le nom du ″, i, ″ème étudiant″) Lire(t[i].nom) répéter Ecrire(″Donner sa note de DS″) Lire(t[i].Ds) Jusqu’à (t[i].Ds dans [0..20]) répéter Ecrire(″Donner sa note d’examen″) Lire(t[i].Ex) Jusqu’à (t[i].Ex dans [0..20]) Fin Pour /*Calcul moyenne de chaque étudiant*/ Pour i de 1 à n faire Ecrire(″La moyenne de l’etudiant″, t[i].nom, ″ est ″, (t[i].Ds+ t[i].Ex)/2 ) Fin Pour Fin
Module Licence Tuteur
: Algorithmique et programmation C : LASTIC : Mme O. Belkahla Driss
Programme C : #include #include #define Nmax 20 typedef struct Etud{ char nom[10]; float Ds, Ex ;} Etudiant; typedef Etudiant TAB[Nmax] ; int main() { TAB t ; int i,n ; /*Saisie du nombre d’etudiants*/ do {printf(″\nDonner le nombre d’etudiants″) ; scanf(″%d″,&n) ;}while ((nNmax)) ; /*Remplissage du Tableau*/ for(i=0 ; i