« INFO504 : Programmation C » : différence entre les versions
(Page créée avec « Cours du semestre 5 de la licence STIC INFO (ex INFO523) * Responsable pour 2017--2018: Jacques-Olivier Lachaud (C/TD/TP) Pensez à consulter les [[Comment compiler le C... ») |
|||
(17 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 1 : | Ligne 1 : | ||
Cours du semestre 5 de la licence |
Cours du semestre 5 de la licence INFORMATIQUE (ex INFO523) |
||
* Responsable pour |
* Responsable pour 2020--2021: Jacques-Olivier Lachaud (C/TD/TP) |
||
⚫ | |||
= Références= |
= Références= |
||
Ligne 13 : | Ligne 11 : | ||
== Quelques ressources pour l'étudiant ( |
== Quelques ressources pour l'étudiant (2020-2021) == |
||
En cette année COVID, les cours seront en visio via Discord. Le serveur Discord vous a été donné lors de la réunion de rentrée. Je mettrais avant chaque cours les fiches correspondant au thème traité dans le cours. Je me servirais des problèmes en tant qu'exercices de TD, sans doute en les restructurant. Consultez cette page de temps en temps pour suivre mes mises à jour. |
|||
⚫ | |||
⚫ | #* Leçon 1, programmes "Hello World !": [http://www.lama.univ-savoie.fr/~lachaud/Cours/ |
||
# Fiches de cours en distanciel |
|||
⚫ | #* Leçon 2, affichage d'un damier: [http://www.lama.univ-savoie.fr/~lachaud/Cours/ |
||
#* |
#* [http://www.lama.univ-savoie.fr/~lachaud/Cours/INFO504/Cours/fiche-0.pdf Fiche 0 - éléments de base du langage C (PDF)] à lire '''avant''' le premier cours, supposé acquis en L2 |
||
#* [http://www.lama.univ-savoie.fr/~lachaud/Cours/INFO504/Cours/fiche-1.pdf Fiche 1 - les fonctions en C (PDF)] accompagne le premier cours (lundi 14/9, 8h15) |
|||
#* [http://www.lama.univ-savoie.fr/~lachaud/Cours/INFO504/Cours/fiche-2.pdf Fiche 2 - les tableaux en C (PDF)] accompagne le deuxième cours (mercredi 16/9, 10h00) |
|||
#* [http://www.lama.univ-savoie.fr/~lachaud/Cours/INFO504/Cours/fiche-3.pdf Fiche 3 - structures et pointeurs en C (PDF)] accompagne le troisième cours (lundi 21/9, 13h30) |
|||
#* [http://www.lama.univ-savoie.fr/~lachaud/Cours/INFO504/Cours/fiche-4.pdf Fiche 4 - mécanismes d'allocation mémoire (PDF)] accompagne le quatrième cours (jeudi 24/9, 15h15) |
|||
#* [http://www.lama.univ-savoie.fr/~lachaud/Cours/INFO504/Cours/fiche-5.pdf Fiche 5 - structures auto-référentes, pointeurs de fonction, préprocesseur (PDF)] accompagne le cinquième cours (jeudi 1/10, 13h30) |
|||
⚫ | |||
⚫ | #* Leçon 1, programmes "Hello World !": [http://www.lama.univ-savoie.fr/~lachaud/Cours/INFO504/Cours/Lessons/lesson-1-a.c lesson-1-a.c] [http://www.lama.univ-savoie.fr/~lachaud/Cours/INFO504/Cours/Lessons/lesson-1-b.c lesson-1-b.c] [http://www.lama.univ-savoie.fr/~lachaud/Cours/INFO504/Cours/Lessons/lesson-1-c.c lesson-1-c.c] |
||
⚫ | #* Leçon 2, affichage d'un damier: [http://www.lama.univ-savoie.fr/~lachaud/Cours/INFO504/Cours/Lessons/lesson-2-a.c lesson-2-a.c] [http://www.lama.univ-savoie.fr/~lachaud/Cours/INFO504/Cours/Lessons/lesson-2-b.c lesson-2-b.c] [http://www.lama.univ-savoie.fr/~lachaud/Cours/INFO504/Cours/Lessons/lesson-2-c.c lesson-2-c.c] [http://www.lama.univ-savoie.fr/~lachaud/Cours/INFO504/Cours/Lessons/lesson-2-d.c lesson-2-d.c] [http://www.lama.univ-savoie.fr/~lachaud/Cours/INFO504/Cours/Lessons/lesson-2-e.c lesson-2-e.c] [http://www.lama.univ-savoie.fr/~lachaud/Cours/INFO504/Cours/Lessons/lesson-2-f.c lesson-2-f.c] |
||
#* Leçon 3, labyrinthes: [http://www.lama.univ-savoie.fr/~lachaud/Cours/INFO504/Cours/Lessons/lesson-3-a.c lesson-3-a.c][http://www.lama.univ-savoie.fr/~lachaud/Cours/INFO504/Cours/Lessons/lesson-3-b.c lesson-3-b.c] |
|||
# Problèmes |
|||
#* Problème 1 : analyse de texte [http://www.lama.univ-savoie.fr/~lachaud/Cours/INFO504/TDs/probleme-1.pdf PDF][http://www.lama.univ-savoie.fr/~lachaud/Cours/INFO504/TDs/le-petit-poucet.txt Le petit poucet][http://www.lama.univ-savoie.fr/~lachaud/Cours/INFO504/TDs/tweets.txt.gz tweets (gzipped)] |
|||
#* Problème 2 : plus grand rectangle dans une grille [http://www.lama.univ-savoie.fr/~lachaud/Cours/INFO504/TDs/probleme-2.pdf PDF] |
|||
#* Problème 3 : tableaux associatifs [http://www.lama.univ-savoie.fr/~lachaud/Cours/INFO504/TDs/probleme-3.pdf PDF] |
|||
# Fiches de TD |
# Fiches de TD |
||
#* TD 1 : tableaux, entrées-sorties [http://www.lama.univ-savoie.fr/~lachaud/Cours/ |
#* TD 1 : tableaux, entrées-sorties [http://www.lama.univ-savoie.fr/~lachaud/Cours/INFO504/TDs/td-1.ps PostScript] [http://www.lama.univ-savoie.fr/~lachaud/Cours/INFO504/TDs/td-1.pdf PDF] |
||
#* TD 2 : exercices sur les pointeurs [http://www.lama.univ-savoie.fr/~lachaud/Cours/ |
#* TD 2 : exercices sur les pointeurs [http://www.lama.univ-savoie.fr/~lachaud/Cours/INFO504/TDs/td-2.ps PostScript] [http://www.lama.univ-savoie.fr/~lachaud/Cours/INFO504/TDs/td-2.pdf PDF] |
||
#* TD 3 : skip-listes [http://www.lama.univ-savoie.fr/~lachaud/Cours/ |
#* TD 3 : skip-listes [http://www.lama.univ-savoie.fr/~lachaud/Cours/INFO504/TDs/td-3.ps PostScript] [http://www.lama.univ-savoie.fr/~lachaud/Cours/INFO504/TDs/td-3.pdf PDF] |
||
#* TD 4 : pointeurs, manipulation de bits, tableau de bits/booléens, ensembles par fonction caractéristique [http://www.lama.univ-savoie.fr/~lachaud/Cours/ |
#* TD 4 : pointeurs, manipulation de bits, tableau de bits/booléens, ensembles par fonction caractéristique [http://www.lama.univ-savoie.fr/~lachaud/Cours/INFO504/TDs/td-4.ps PostScript] [http://www.lama.univ-savoie.fr/~lachaud/Cours/INFO504/TDs/td-4.pdf PDF] |
||
# TPs et autres travaux pratiques. Les énoncés sont sur la [http://www.lama.univ-savoie.fr/~lachaud/Cours/ |
# TPs et autres travaux pratiques. Les énoncés sont sur la [http://www.lama.univ-savoie.fr/~lachaud/Cours/INFO504/Tests/doc/html/index.html Pages des TPs]. |
||
#* Les TPs 2 et 3 sont évalués et à rendre via [http://www.lama.univ-savoie.fr/TPLab TPLab] |
#* Les TPs 2 et 3 sont évalués et à rendre via [http://www.lama.univ-savoie.fr/TPLab TPLab] |
||
#* Pour la première fois, on pourra aussi regarder la page [[Comment_compiler_le_C_%3F]] |
#* Pour la première fois, on pourra aussi regarder la page [[Comment_compiler_le_C_%3F]] |
||
#* Si vous n'accédez pas aux pages "manual" en salle TP, on les trouve en ligne : [[http://www.linux-france.org/article/man-fr/ Manual pages]] |
#* Si vous n'accédez pas aux pages "manual" en salle TP, on les trouve en ligne : [[http://www.linux-france.org/article/man-fr/ Manual pages]] |
||
# Annales |
# Annales |
||
#* Examen (2010-2011) : [http://www.lama.univ-savoie.fr/~lachaud/Cours/ |
#* Examen (2010-2011) : [http://www.lama.univ-savoie.fr/~lachaud/Cours/INFO504/Examens/examen-INFO517-2010-2011.ps sujet Postscript], [http://www.lama.univ-savoie.fr/~lachaud/Cours/INFO504/Examens/examen-INFO517-2010-2011.pdf sujet PDF] |
||
#* Examen 2ème session (2010-2011) : [http://www.lama.univ-savoie.fr/~lachaud/Cours/ |
#* Examen 2ème session (2010-2011) : [http://www.lama.univ-savoie.fr/~lachaud/Cours/INFO504/Examens/examen-INFO517-2010-2011-S2.ps sujet Postscript], [http://www.lama.univ-savoie.fr/~lachaud/Cours/INFO504/Examens/examen-INFO517-2010-2011-S2.pdf sujet PDF] |
||
N'hésitez pas à contribuer au wiki, et en particulier à cette page: |
N'hésitez pas à contribuer au wiki, et en particulier à cette page: |
||
Ligne 41 : | Ligne 52 : | ||
= Historique = |
= Historique = |
||
* Responsable pour 2019--2020: Jacques-Olivier Lachaud (C/TD/TP), Gérald Cavallini (TD/TP) |
|||
* Responsable pour 2018--2019: Jacques-Olivier Lachaud (C/TD/TP) |
|||
* Responsable pour 2017--2018: Jacques-Olivier Lachaud (C/TD/TP) |
|||
* Responsable pour 2016--2017: Jacques-Olivier Lachaud (C/TD/TP), Rodolphe Lepigre (TP) |
* Responsable pour 2016--2017: Jacques-Olivier Lachaud (C/TD/TP), Rodolphe Lepigre (TP) |
||
* Responsable pour 2015--2016: Jacques-Olivier Lachaud (C/TD/TP) |
* Responsable pour 2015--2016: Jacques-Olivier Lachaud (C/TD/TP) |
||
Ligne 50 : | Ligne 64 : | ||
* Responsable pour 2009--2010: Emilie Charrier (C/TD/TP) |
* Responsable pour 2009--2010: Emilie Charrier (C/TD/TP) |
||
* Responsable pour 2008--2009: Lionel Vaux (C/TD/TP) |
* Responsable pour 2008--2009: Lionel Vaux (C/TD/TP) |
||
⚫ | |||
⚫ | |||
== Déroulement (2012-2013) == |
== Déroulement (2012-2013) == |
||
Ligne 103 : | Ligne 122 : | ||
* (TP 3): jeudi 21 octobre. Tetris graphique avec GTK. |
* (TP 3): jeudi 21 octobre. Tetris graphique avec GTK. |
||
⚫ | |||
== Ressources pour l'étudiant (avant 2010) == |
== Ressources pour l'étudiant (avant 2010) == |
||
Dernière version du 29 septembre 2020 à 14:30
Cours du semestre 5 de la licence INFORMATIQUE (ex INFO523)
- Responsable pour 2020--2021: Jacques-Olivier Lachaud (C/TD/TP)
Références
- The C programming language, de Kernighan et Ritchie;
- Le langage C, version française du précédent;
- Le polycopié de Bernard Cassagne, disponible ici, au format html (consultable en ligne) ou pdf;
- Le wikilivre Programmation C: un livre de cours sur le mode wikipedia.
Quelques ressources pour l'étudiant (2020-2021)
En cette année COVID, les cours seront en visio via Discord. Le serveur Discord vous a été donné lors de la réunion de rentrée. Je mettrais avant chaque cours les fiches correspondant au thème traité dans le cours. Je me servirais des problèmes en tant qu'exercices de TD, sans doute en les restructurant. Consultez cette page de temps en temps pour suivre mes mises à jour.
- Fiches de cours en distanciel
- Fiche 0 - éléments de base du langage C (PDF) à lire avant le premier cours, supposé acquis en L2
- Fiche 1 - les fonctions en C (PDF) accompagne le premier cours (lundi 14/9, 8h15)
- Fiche 2 - les tableaux en C (PDF) accompagne le deuxième cours (mercredi 16/9, 10h00)
- Fiche 3 - structures et pointeurs en C (PDF) accompagne le troisième cours (lundi 21/9, 13h30)
- Fiche 4 - mécanismes d'allocation mémoire (PDF) accompagne le quatrième cours (jeudi 24/9, 15h15)
- Fiche 5 - structures auto-référentes, pointeurs de fonction, préprocesseur (PDF) accompagne le cinquième cours (jeudi 1/10, 13h30)
- Notes de cours (Mis à jour le 4/9/2019) PDF
- Leçon 1, programmes "Hello World !": lesson-1-a.c lesson-1-b.c lesson-1-c.c
- Leçon 2, affichage d'un damier: lesson-2-a.c lesson-2-b.c lesson-2-c.c lesson-2-d.c lesson-2-e.c lesson-2-f.c
- Leçon 3, labyrinthes: lesson-3-a.clesson-3-b.c
- Problèmes
- Problème 1 : analyse de texte PDFLe petit poucettweets (gzipped)
- Problème 2 : plus grand rectangle dans une grille PDF
- Problème 3 : tableaux associatifs PDF
- Fiches de TD
- TD 1 : tableaux, entrées-sorties PostScript PDF
- TD 2 : exercices sur les pointeurs PostScript PDF
- TD 3 : skip-listes PostScript PDF
- TD 4 : pointeurs, manipulation de bits, tableau de bits/booléens, ensembles par fonction caractéristique PostScript PDF
- TPs et autres travaux pratiques. Les énoncés sont sur la Pages des TPs.
- Les TPs 2 et 3 sont évalués et à rendre via TPLab
- Pour la première fois, on pourra aussi regarder la page Comment_compiler_le_C_?
- Si vous n'accédez pas aux pages "manual" en salle TP, on les trouve en ligne : [Manual pages]
- Annales
- Examen (2010-2011) : sujet Postscript, sujet PDF
- Examen 2ème session (2010-2011) : sujet Postscript, sujet PDF
N'hésitez pas à contribuer au wiki, et en particulier à cette page: clarifications, compléments, exemples… Si vous n'avez pas compris un point particulier, vous pouvez signaler votre problème sur la page de discussion (onglet en haut de cette page) ou par les moyens habituels. Il sera ensuite très positif de revenir sur cette page et de consigner ce qui vous posait problème et ce qui vous a permis de mieux comprendre.
Historique
- Responsable pour 2019--2020: Jacques-Olivier Lachaud (C/TD/TP), Gérald Cavallini (TD/TP)
- Responsable pour 2018--2019: Jacques-Olivier Lachaud (C/TD/TP)
- Responsable pour 2017--2018: Jacques-Olivier Lachaud (C/TD/TP)
- Responsable pour 2016--2017: Jacques-Olivier Lachaud (C/TD/TP), Rodolphe Lepigre (TP)
- Responsable pour 2015--2016: Jacques-Olivier Lachaud (C/TD/TP)
- Responsable pour 2014--2015: Jacques-Olivier Lachaud (C/TD/TP)
- Responsable pour 2013--2014: Jacques-Olivier Lachaud (C/TD/TP)
- Responsable pour 2012--2013: Xavier Provençal (C/TD/TP), Pierre-Étienne Meunier (TP)
- Responsable pour 2011--2012: Jacques-Olivier Lachaud (C/TD/TP), Xavier Provençal (TP)
- Responsable pour 2010--2011: Jacques-Olivier Lachaud (C/TD/TP), Xavier Provençal (TP)
- Responsable pour 2009--2010: Emilie Charrier (C/TD/TP)
- Responsable pour 2008--2009: Lionel Vaux (C/TD/TP)
Pensez à consulter les indications pour compiler un petit programme sur une machine des salles de TP.