Plan du cours : Langage C (C1)
- Introduction
(notion d’algorithme, programme, fonctionnement interne de
l’ordinateur, interpréteur de commandes shell, quelques commandes de
base).
- Préliminaires
(notion de type, variable, constante, affectation, expression
d’algorithme en pseudo-langage et codage, fonctions de base d’I/O).
- Structure d’un
programme complexe (notion de bloc, portée des variables, fonction,
valeur de retour, passage de paramètres, pointeurs).
- Expressions et
instructions (expressions arithmétiques, Booléennes, opérateurs
associés ; instructions itératives, conditionnelles, autres).
- 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).
- Pointeurs et
fonctions.
- Fichiers.
Plan du cours : Langage C (C2)
- Récursivité.
- Evaluation de la
complexité d’algorithmes (notions élémentaires, notation approchée).
- Structures de
données (liste, pile, file, arbre).
- Tri (sélection,
bulle, fusion).
- 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.