Année: 2018-2019
Travaux pratiques 2
Objectifs
- Comprendre les opérateurs, les tableaux, les pointeurs et les structures.
Exercice 2.1 ★
Imaginez que vous gérez les notes de cinq étudiants. En utilisant seulement des tableaux, écrivez un programme etudiant.c qui déclare, initialise et affiche les détails de ces cinq étudiants. Pour chaque étudiant, on est intéressé par son nom, son prénom, son adresse, et ses notes dans 2 modules (Programmation en C, Système d’exploitation).
Exercice 2.2 ★
Ecrivez un programme etudiant2.c pour la gestion de données étudiantes (5 étudiants) en utilisant struct. Les détails pour chaque étudiant restent les mêmes comme pour le point 5 (nom, prénom etc.) Vous pouvez utiliser strcpy (comme on a vu pendant les cours) pour initialiser les noms, prénoms etc.
Exercice 2.3 ★★
Une couleur en format RGBA contient 4 valeurs : rouge (R), vert (G), bleu (B) et alpha (A). Chaque valeur est un octet. Créez un programme couleurs.c en utilisant struct. Ensuite, créer et initialiser un tableau de 10 couleurs. Pensez à initialiser les coleurs en notation hexadécimale (r : 0xef, g : 0x78 etc.).
Exercice 2.4 ★★
Réutiliser le programme variables.c et créez un programme ptrvariables.c qui affecte et affiche les valeurs des variables de différents types de base (char, short, int, long int, long long int, float, double, long double) en utilisant leurs adresses. N’oubliez pas afficher l’adresse et la valeur de ces variables avant ou après la manipulation par leurs adresses (en utilisant les pointeurs).
Exercice 2.5 ★★★
Créez un programme tableauptr.c et écrivez le code pour créer deux tableaux différents : int et float. Remplissez les valeurs aléatoires. Pour les deux tableaux, si l’indice est divisé par 2, multipliez la valeur à cette position par 3. N’utilisez pas la notation indicielle pour parcourir les tableaux (e.g, i [3], i [5] etc.). Utilisez les pointeurs.
Exercice 2.6 ★★★
Ecrivez un programme chercher.c qui créer un tableau de 10 phrases (un tableau de tableau de caractères). Sans utilisant les fonctions de bibliothèques standards ou externes, cherchez si une phrase est dans le tableau ou pas. (BONUS, si vous utilisez char **, c’est-à-dire l'adresse d'une variable qui contient l'adresse d’une variable char)
Astuce
- Pour l'exercice 2.5, pensez à utiliser *(s+i) etc (e.g, si s est un pointeur de type int *).
Fichiers
etudiant.c, etudiant2.c, couleurs.c, ptrariables.c, tableauptr.c, chercher.c
Instructions
- Ne pas oublier les commentaires (nom de fichier, objectif, auteurs, , les lignes importantes de code etc.). Les commentaires sont notés.
- N’oublier pas de mettre à jour le fichier README et ajouter les détails concernant votre deuxième exercice.
- Compte rendu en format .zip en un seul fichier.