Université d’Aix-Marseille – Faculté des Sciences
Henri Garreta

 
Algorithmique & programmation en langage C 
28/01/2013

Algorithmique &
programmation en langage C

Ces pages sont une synthèse de divers enseignements sur le langage C donnés à la Faculté des Sciences en Licence d’Informatique, Master de Mathématiques et Master professionnel Compétence Complémentaire en Informatique.

Il y est question un peu d’algorithmique élémentaire mais surtout de programmation en langage C. Cependant, les rudiments de la programmation sont supposés connus et on ne revient pas sur des notions de base comme celles de variable, expression, affectation, etc.

Les commentaires et suggestions sont les bienvenus. Les questions aussi, mais sans garantie de réponse.

Supports de cours

Exercices

Problèmes

Bonnes adresses

Compilateurs libres ou gratuits

Tous les exercices proposés ici ont été effectivement réalisés et testés sur Linux avec ses outils de développement C natifs (gcc et ses amis) et sur Windows avec l’environnement de développement Dev-C++.

Dev-C++ n’est plus maintenu, son successeur s’appelle wxDev-C++ ; vous pouvez télécharger ici la dernière version de wxDev-C++ et lire ici quelques explications (probablement obsolètes) à propos de l’installation et l’utilisation de Dev-C++.

Notre recommandation pour programmer en C est Code::Blocs, un autre excellent successeur de Dev-C++. Vous pouvez en télécharger ici des versions pour Windows, Linux et MacOs X. En outre, vous pouvez lire ici quelques indications sur l'utilisation du débogueur de Code::Blocs.

Sur Windows, wx-Dev-C++ et Code::Blocs sont construits au-dessus de MinGW, un portage de gcc, le compilateur C/C++ du projet GNU. Ainsi, que vous travailliez chez vous avec Windows et Code::Blocs ou bien à la fac avec Linux, vos programmes seront traités exactement de la même manière.

Une autre plate-forme utilisant gcc est eclipse, dont existe des versions Windows, MacOS et Linux. Il vous faudra installer le plugin CDT et, par ailleurs, MinGW ou cygwin. Eclipse est un peu plus lourd que les deux outils précédents, mais il permet le développement dans beaucoup d’autres langages de programmation, à commencer par Java.

Sur Windows, un autre excellent outil pour faire du C est Microsoft Visual C++, dont la version dite Express Edition est gratuite. L’installation est plus laborieuse que pour les deux précédents et le compilateur au cœur du dispositif n’est pas à la pointe du langage comme gcc, mais son débogueur intégré est d’une remarquable qualité. Des explications sur ce produit sont données ici.

Le Site du Zéro donne de précieuses explications sur la manière de télécharger et installer tous ces divers produits.

Enfin, si vous êtes unixien fondamentaliste et pensez qu’on n’a rien inventé depuis gcc et vi, voyez quand-même ici des indications sur l’utilisation de DDD, le débogueur graphique de Linux.