Sujets de travaux pratiques du module Programmation en C
Les objectifs du module sont de comprendre les différents aspects de la programmation en C et de créer un projet en C. Après avoir realisé les exercices, vous serez capable de:
- Comprendre la chaine de compilation en utilisant GCC (GNU compilation chain) : du prétraitement jusqu'à l'exécution
- Travailler avec les bibliothèques standards et les appels de système d'exploitation (fichiers, les sockets réseau etc.)
- Comprendre les pointeurs et manipuler les buffers en utilisant les pointeurs
- Créer, compiler et exécuter un projet en C
- Travailler avec les différents formats de données comme BMP et les structures de données
- Créer un simple programme client-serveur pour le transfert de fichiers et de messages
- Exécuter les applications existantes sur la machine (par exemple, GNU plot)
- Documenter une application en utilisant le format markdown (*.md)
- Tester une application
- Système d'exploitation: Linux
- Ubuntu
- Machine virtuelle (VirtualBox) + Ubuntu
- Compilateur:
gcc
- Logiciels: gnuplot
- Installation:
sudo apt install gnuplot gnuplot-x11
- Installation:
- Tous les travaux pratiques sont basés sur les aspects que vous avez déjà appris pendant vos cours. Utilisez-bien vos supports cours.
- Travaillez en binôme.
- Il est obligatoire de citer toutes les sources (par exemple, internet, groupes)
- Les séances sont encadrées par 2 enseignants.
- N'utilisez pas des bibliothèques externes.
- Les travaux pratiques correspondent à 40% de votre note finale
- Vous avez sept travaux pratiques. Chaque travail pratique (TP) comporte plusieurs exercices. Chaque exercice est noté.
- Total points pour tous les travaux pratiques: 20
- Rendu en ligne.
- Chaque question a un niveau de difficulté
- ★: Facile
- ★★: Difficulté moyenne
- ★★★: Difficile
Il y a deux parties de rendu: le rapport d'auto-évaluation et les sources
Votre dossier de rendu doit contenir les fichiers suivants:
- a. README.md: rapport d'auto-évaluation
- b. CONTRIBUTORS.md: Noms et prénoms de contributeurs
- c. src/ : le code source dans le répertoire src
Votre rendu doit être renommé groupe_N1_N2, où N1 et N2 sont les noms (e.g., groupe_DUPONT_SMITH.).
Ecrivez README.md et CONTRIBUTORS.md en format markdown.
Le contenu de README.md ou le rapport d'auto-évaluation : TP N (N: [1..7])
- i. Bibliothèques: les bibliothèques standards
- ii. Références: les URLs, les groupes
- iii. Difficulté: niveau de difficulté (facile, moyenne, difficile)
- iv. Commentaires (optionnels): remarques etc.
Avant de déposer votre travail pratique, assurez-vous de respecter la liste de contrôle suivante:
- ✅ Les noms (prénom et noms) de la binôme sont présents dans le fichier CONTRIBUTORS.md
- ✅ Le fichier README.md est complètement rempli.
- ✅ Respectez les noms de fichiers de chaque exercice. Utilisez le même nom que celui qui a été demandé dans les travaux pratiques.
- ✅ Votre code est bien commenté.
- ✅ Votre code peut être compilé sans aucune erreur (et si possible, sans aucun avertissement).
Pour référence, vous pouvez consulter le répertoire suivant: https://github.com/johnsamuelwrites/ProgC. Il contient des modèles de code pour tous les exercices des sept travaux pratiques.
Vous pouvez le consulter en ligne en utilisant le lien ci-dessus ou le cloner sur votre machine à l'aide du terminal en utilisant les commandes suivantes.
$ git clone https://github.com/johnsamuelwrites/ProgC
$ cd ProgC
$ ls
Pour obtenir les dernières mises à jour du répertoire, vous pouvez exécuter la commande suivante
$ git pull
- Aucune soumission par courriel électronique.
- Les liens vers des sites externes comme GitHub/GitLab,... ne seront pas acceptés.
- Seules les soumissions complètes sur E-Campus seront acceptées pour l'évaluation.
- Ne pas modifier les noms de fichiers (*.c, *.h, *.md, ...).
- John Samuel
All code are released under GPLv3+ licence. The associated documentation and other content are released under CC-BY-SA.