Plan du cours : Langage C (C1)

 

  1. Introduction (notion d’algorithme, programme, fonctionnement interne de l’ordinateur, interpréteur de commandes shell, quelques commandes de base).
  2. Préliminaires (notion de type, variable, constante, affectation, expression d’algorithme en pseudo-langage et codage, fonctions de base d’I/O).
  3. Structure d’un programme complexe (notion de bloc, portée des variables, fonction, valeur de retour, passage de paramètres, pointeurs).
  4. Expressions et instructions (expressions arithmétiques, Booléennes, opérateurs associés ; instructions itératives, conditionnelles, autres).
  5. Types de données et gestion de la mémoire (tableaux, chaînes de caractères, structures, allocation statique et dynamique de la mémoire).
  6. Pointeurs et fonctions.
  7. Fichiers.

 

Plan du cours : Langage C (C2)

 

  1. Récursivité.
  2. Evaluation de la complexité d’algorithmes (notions élémentaires, notation approchée).
  3. Structures de données (liste, pile, file, arbre).
  4. Tri (sélection, bulle, fusion).
  5. Recherche (dichotomie).

 

 

Contrôle de connaissances : 1 exam en C1 et 1 exam en C2

 

Projet : en binômes, distribution de sujets en décembre, réalisation pendant les semaines bloquées en janvier
puis soutenance individuelle.

 

Références utiles :

·        B. Kernighan et D. Ritchie. Le langage C. Masson 1995.

·        B. Kernighan et D. Ritchie. Le langage C. 2ème édition, Dunod, 1990 (Norme ANSI, ouvrage de référence).

·        C. Delannoy. Programmer en Langage C. Eyrolles. 2002.

·        H. Garetta.  Le langage C. InterEditions.