Retour accueil UPMCPhoto1 UPMCPhoto2 UPMC
UE: Programmation impérative et structures de données en C
Site permanent

L'unité d'enseignement « Programmation impérative et structures de données en C » est une UE de niveau (200) approfondissement relevant de la licence d'informatique. Elle possède un volume de 6 ECTS et s'étend sur 12 semaines. Elle est placée sous la responsabilité de DESBARBIEUX, jean-lou.

Description

Bien que créé en 1972, le langage C fait encore aujourd'hui l'objet d'une très grande popularité et de très nombreuses applications sont décrites en C. Il est : universel, compact, structuré, proche de la machine, efficace, mais il peut aussi être dangereux car il n'impose que très peu de contraintes au programmeur. En suivant cette UE vous apprendrez à maîtriser ce formidable outil.

L'objectif principal de cette UE (accompagnée des UE "Initiation à la programmation impérative en C" et "Programmation impérative et concurrente") est la maitrise complète de la programmation impérative.

Associée au module "Initiation à la programmation impérative en C" cette UE permettra aux étudiants de maîtriser un langage informatique de "référence".

Cette UE présentera sous un angle impératif les structures de données les plus couramment utilisées en programmation (listes, piles et arbres). Le point sera particulièrement mis sur la gestion explicite de la mémoire (pointeurs et allocation dynamique). Les principes de la compilation séparée seront présentés en cours et pratiqués en TME (.h, .c, .o et Makefile). Les accès aux fichiers seront abordés ainsi que le lien avec d'autres langages et quelques notions d'algorithmique et de complexité.

Les TME seront réalisés dans un environement Linux standard en utilisant les outils les plus couramment répandus : gcc, ddd.

La connaissance des structures de base du C (types, structures de contrôle et fonctions) est très fortement recommandée.

Préalables et buts pédagogiques

Bibliographie

  • Brian.W. Kernighan, Dennis M. Ritchie. Le langage C, Norme ANSI. Dunod, 2004.

  • Claude Delannoy. Programmer en language C. Eyrolles, 2002, Collection Noire ou "Best of".

Contenu indicatif par semaine

  1. Syntaxe du C n°1 : les types et les expressions, outils du C n°1 (gcc, ddd).

  2. Syntaxe du C n°2 : les fonctions, passage de paramètres, outils du C n°2 (.h, .c, make).

  3. Les pointeurs, les structures, l'allocation dynamique.

  4. Exemples de programmation utilisant pointeurs et structures.

  5. Les listes chaînées.

  6. Les arbres d'expression, initiation au graphisme.

  7. Les tables de hachage.

  8. Présentation du projet Scrabble.

  9. Scrabble 2.

  10. Scrabble 3.

  11. Scrabble fin.

  12. Conclusion et ouverture vers la programmation concurrente.

Annales

Les annales de cette UE sont ici.