Exercices corrigés en programmation en c
Filière MIP MIPC SMPC SMIA GEGM
Le langage C a été mis au point par D.Ritchie et B.W.Kernighan au début des années 70. Leur but était de permettre de développer un langage qui permettrait d'obtenir un système d'exploitation de type UNIX portable. D.Ritchie et B.W.Kernighan se sont inspirés des langages B et BCPL, pour créer un nouveau langage : le langage C.
La première définition de ce langage a été donnée dans leur livre commun « The C programming language ».
Toutefois, suite à l'apparition de nombreux compilateurs C, l'ANSI (abréviation de American National Standards
Institute) a décidé de normaliser ce langage pour donner ce que l'on appelle le C-ANSI. Suite à cette norme,
La première définition de ce langage a été donnée dans leur livre commun « The C programming language ».
Toutefois, suite à l'apparition de nombreux compilateurs C, l'ANSI (abréviation de American National Standards
Institute) a décidé de normaliser ce langage pour donner ce que l'on appelle le C-ANSI. Suite à cette norme,
Ritchie et Kernighan ont sorti une deuxième édition du livre en intégrant les modifications apportées par l'ANSI.
Le langage C reste un des langages les plus utilisés actuellement. Cela est dû au fait que le langage C est un langage
qui comporte des instructions et des structures de haut niveau (contrairement à l'assembleur par exemple) tout en
générant un code très rapide grâce à un compilateur très performant.
Un des principaux intérêts du C est que c'est un langage très portable. Un programme écrit en C en respectant la norme ANSI est portable sans modifications sur n'importe quel système d'exploitation disposant d'un compilateur C :
Windows, UNIX, VMS (système des VAX) ou encore OS/390 ou z/Os (l'OS des mainframes IBM).
La rapidité des programmes écrits en C est en grande partie due au fait que le compilateurprésuppose que le programmeur sait ce qu'il fait : il génère un code ne contenant pas de vérifications sur la validité des pointeurs,
l'espace d'adressage, etc. Ainsi, les programmes en C sont très compacts.
De plus, une des caractéristiques du C est qu'il est un langage « faiblement typé » : les types de données qu'il manipule sont très restreints, et proches de la représentation interne par le processeur : par exemple, le type 'Chaîne de caractères' n'existe pas en C. A l'inverse, comparer un entier et un caractère a un sens en C car un caractère est bien représenté en interne par le processeur par une valeur de type entier (le code ASCII ou le code EBCDIC).
Enfin et pour conclure, il est inexact que le C est un langage difficile à apprendre ! Au contraire : le C dispose de peu d'instructions, les structures de données sont limitées, etc.
Le C est un langage concis et son apprentissage est beaucoup moins ardu que ne peut l'être celui du Pascal par exemple. Voire l'exemple de code sur le JDN : Comment afficher les nombres allant de 1 à 1000 en C ou C++ sans utiliser de boucle ni de structure conditionnelle ?)
L'apprentissage du C est ainsi nécessaire pour quiconque s'intéresse à la programmation,
Le langage C reste un des langages les plus utilisés actuellement. Cela est dû au fait que le langage C est un langage
qui comporte des instructions et des structures de haut niveau (contrairement à l'assembleur par exemple) tout en
générant un code très rapide grâce à un compilateur très performant.
Un des principaux intérêts du C est que c'est un langage très portable. Un programme écrit en C en respectant la norme ANSI est portable sans modifications sur n'importe quel système d'exploitation disposant d'un compilateur C :
Windows, UNIX, VMS (système des VAX) ou encore OS/390 ou z/Os (l'OS des mainframes IBM).
La rapidité des programmes écrits en C est en grande partie due au fait que le compilateurprésuppose que le programmeur sait ce qu'il fait : il génère un code ne contenant pas de vérifications sur la validité des pointeurs,
l'espace d'adressage, etc. Ainsi, les programmes en C sont très compacts.
De plus, une des caractéristiques du C est qu'il est un langage « faiblement typé » : les types de données qu'il manipule sont très restreints, et proches de la représentation interne par le processeur : par exemple, le type 'Chaîne de caractères' n'existe pas en C. A l'inverse, comparer un entier et un caractère a un sens en C car un caractère est bien représenté en interne par le processeur par une valeur de type entier (le code ASCII ou le code EBCDIC).
Enfin et pour conclure, il est inexact que le C est un langage difficile à apprendre ! Au contraire : le C dispose de peu d'instructions, les structures de données sont limitées, etc.
Le C est un langage concis et son apprentissage est beaucoup moins ardu que ne peut l'être celui du Pascal par exemple. Voire l'exemple de code sur le JDN : Comment afficher les nombres allant de 1 à 1000 en C ou C++ sans utiliser de boucle ni de structure conditionnelle ?)
L'apprentissage du C est ainsi nécessaire pour quiconque s'intéresse à la programmation,
et cet apprentissage en vaut la peine !
Table des matières
- Chapitre 1 : Généralités sur le langage
- Chapitre 2 : Les conditions
- Chapitre 3 : Les boucles
- Chapitre 4 : Les tableaux.
- Chapitre 5 : Les fonctions
Aucun commentaire:
Enregistrer un commentaire