1 à 4
|
Description première de la qualité de programmation attendue : commentaires, indentation, utilisation de constantes symboliques et choix des identificateurs.
Notions élémentaires de programmation : types de base du C avec leurs opérateurs et conversions automatiques, variables, entrées/sorties de base, instructions conditionnelles et itératives et l’algorithmie de base, comparaison et compatibilité des types numériques, opérateurs binaires.
Commandes au préprocesseur : #define, #include, et #if..#endif.
Fonctions : déclaration, commentaires standard à la déclaration, paramètres effectifs et paramètres formels, valeur de retour, passage par valeur, portée et durée de vie des variables, factorisation et modules de fonctions.
Pointeurs : l’indirection, déclaration, initialisation et assignation, passage par adresse.
Tableaux : déclaration, initialisation, accès aux éléments, passage en paramètre, tableaux de tableaux et algorithmes de base, déclarations de types (avec typedef), fouilles et tris.
Chaînes de caractères : chaînes littérales et fonctions offertes par le langage.
|
5 à 8
|
Pointeurs et adresses : arithmétique des adresses, pointeurs génériques (void *).
Classes d’allocation : auto, static et extern.
Tableaux dynamiques : allocation dynamique de mémoire (calloc, malloc, realloc et free).
Enregistrements : déclaration, accès aux membres et passage en paramètre.
Fichiers texte et binaire : le FILE * et ses fonctions classiques.
Modules : modules de déclarations (.h) et de définitions (.c), définitions de types et implémentations des fonctions nécessaires à une architecture bien faite, encapsulation de données et de traitements.
Piles et files : première implémentation sur tableaux.
|
9 à 13
|
Chaînage dynamique : nœuds et références chainées.
Listes chaînées : intérêt, fonctionnement et implémentations.
Piles et files : implémentations avec chaînage dynamique.
Notions complémentaires (si nécessaires) et révision finale.
|