Vous êtes sur la page 1sur 36

Cours langage C

Par Cyrille MBIA


À propos de la programmation C

Langage procédural - Les instructions d'un programme C sont exécutées étape par étape.

Portable - Vous pouvez déplacer des programmes C d'une plate-forme à une autre et les exécuter sans
modification ou sans modifications.

Vitesse - La programmation C est plus rapide que la plupart des langages de programmation comme Java,
Python, etc.

Usage général - La programmation C peut être utilisée pour développer des systèmes d'exploitation, des
systèmes embarqués, des bases de données, etc.

2
Pourquoi apprendre la programmation C ?
 C vous aide à comprendre l'architecture interne d'un ordinateur, comment l'ordinateur stocke et
récupère les informations.

 Après avoir appris le C, il sera beaucoup plus facile d'apprendre d'autres langages de
programmation comme Java, Python, etc.

 Possibilité de travailler sur des projets open source. Certains des plus grands projets open source
tels que le noyau Linux, l'interpréteur Python, la base de données SQLite, etc. sont écrits en
programmation C.

3
Mots-clés et identifiants en C

Dans ce cours, vous découvrirez les mots-clés ; mots réservés en programmation C qui font partie de la
syntaxe. De plus, vous découvrirez les identifiants et comment les nommer.

Jeu de caractères

Un jeu de caractères est un ensemble d'alphabets, de lettres et de certains caractères spéciaux valides en
langage C.

4
Caractères spéciaux

5
Mots-clés

Les mots-clés sont des mots prédéfinis et réservés utilisés dans la programmation qui ont une signification
particulière pour le compilateur. Les mots-clés font partie de la syntaxe et ils ne peuvent pas être utilisés
comme identifiant. Par example:

Ici, int est un mot-clé qui indique que money est une variable de type int (entier).

Comme C est un langage sensible à la casse, tous les mots-clés doivent être écrits en minuscules. Voici
une liste de tous les mots-clés autorisés dans ANSI C.

6
Mots-clés

7
Identifiants C

L'identifiant fait référence au nom donné à des entités telles que des variables, des fonctions, des
structures, etc.

Les identifiants doivent être uniques. Ils sont créés pour donner un nom unique à une entité afin de
l'identifier lors de l'exécution du programme. Par example:

Ici, money et accountBalance sont des identifiants.

N'oubliez pas non plus que les noms d'identifiant doivent être différents des mots-clés. Vous ne pouvez pas
utiliser int comme identifiant car int est un mot-clé.

8
Règles de nommage des identifiants

 Un identifiant valide peut contenir des lettres (à la fois majuscules et minuscules), des chiffres et des
traits de soulignement.

 La première lettre d'un identifiant doit être soit une lettre, soit un trait de soulignement.

 Vous ne pouvez pas utiliser des mots-clés comme int, while etc. comme identifiants.

 Il n'y a pas de règle sur la durée d'un identifiant. Cependant, vous pouvez rencontrer des problèmes
dans certains compilateurs si l'identifiant fait plus de 31 caractères.

 Vous pouvez choisir n'importe quel nom comme identifiant si vous suivez la règle ci-dessus,
cependant, donnez des noms significatifs aux identifiants qui ont du sens. 9
Variables

En programmation, une variable est un conteneur (zone de stockage) pour contenir des données.

Pour indiquer la zone de stockage, chaque variable doit recevoir un nom unique (identifiant). Les noms de
variables ne sont que la représentation symbolique d'un emplacement mémoire. Par exemple :

Ici, playerScore est une variable de type int. Ici, la variable reçoit une valeur entière 95.

La valeur d'une variable peut être modifiée, d'où le nom de variable.

10
Règles pour nommer une variable

C est un langage fortement typé. Cela signifie que le type de variable ne peut pas être modifié une fois
qu'il est déclaré. Par exemple:

Ici, le type de variable number est int. Vous ne pouvez pas affecter une valeur à virgule flottante
(décimale) 5,5 à cette variable. De plus, vous ne pouvez pas redéfinir le type de données de la variable en
double. Soit dit en passant, pour stocker les valeurs décimales en C, vous devez déclarer son type en
double ou en. float

11
Types de données

En programmation C, les types de données sont des déclarations de variables. Cela détermine le type et la
taille des données associées aux variables. Par exemple,

Ici, myVar est une variable de type int (entier). La taille de int est de 4 octets

12
Types de données
Types de base

Voici une image contenant les types couramment utilisés en programmation C pour un accès rapide.

13
signed et unsigned
En C, signed et unsigned sont des modificateurs de type. Vous pouvez modifier le stockage des données
d'un type de données en les utilisant :

signed - permet le stockage des nombres positifs et négatifs

unsigned - permet de stocker uniquement des nombres positifs

Par exemple,

Ici, les variables x et num ne peuvent contenir que des valeurs nulles et positives car nous avons utilisé le
modificateur unsigned.

Étant donné que la taille de int est de 4 octets, la variable y peut contenir des valeurs de -231 à 231-1,
tandis que la variable x peut contenir des valeurs de 0 à 232-1.

14
Entrée Sortie (E/S)
Sorties

En programmation C, printf() est l'une des principales fonctions de sortie. La fonction envoie une sortie
formatée à l'écran. Par exemple,

15
Entrée Sortie (E/S)
Comment fonctionne ce programme ?

Tous les programmes C valides doivent contenir la fonction main(). L'exécution du code commence au
début de la fonction main().

Le printf() est une fonction de bibliothèque pour envoyer une sortie formatée à l'écran. La fonction
imprime la chaîne entre guillemets.

Pour utiliser printf() dans notre programme, nous devons inclure le fichier d'en-tête stdio.h en utilisant
l'instruction #include <stdio.h>.

Le return 0 ; à l'intérieur de la fonction main () est « état de sortie » du programme. C'est facultatif.

16
Entrée Sortie (E/S)
Nous utilisons le spécificateur de format %d pour imprimer les types int. Ici, le %d à l'intérieur des
guillemets sera remplacé par la valeur de testInteger.

17
Entrée
En programmation C, scanf() est l'une des fonctions couramment utilisées pour prendre les entrées de
l'utilisateur. La fonction scanf() lit les entrées formatées à partir des entrées standard telles que les
claviers.

Ici, nous avons utilisé le spécificateur de format %d dans la fonction scanf() pour prendre l'entrée int de
l'utilisateur. Lorsque l'utilisateur entre un entier, il est stocké dans la variable testInteger.

18
Entrée
Notez que nous avons utilisé &testInteger dans scanf(). C'est parce que &testInteger obtient l'adresse de
testInteger, et la valeur entrée par l'utilisateur est stockée dans cette adresse.

19
Les flux de contrôle
Structures conditionnelles

La syntaxe de l'instruction if en programmation C est :

Comment la déclaration if fonctionne?

L'instruction if évalue l'expression de test entre parenthèses ().

Si l'expression de test est évaluée à true, les instructions à l'intérieur du corps de if sont exécutées. Si
l'expression de test est évaluée à false, les instructions à l'intérieur du corps de if ne sont pas exécutées.
20
Les flux de contrôle
L'instruction if peut avoir un bloc else facultatif. La syntaxe de l'instruction if..else est :

Comment fonctionne l'instruction if...else ?

Si l'expression de test est évaluée à vrai,

les instructions à l'intérieur du corps de if sont exécutées. les instructions à l'intérieur du corps de else sont
ignorées de l'exécution. Si l'expression de test est évaluée à faux, les instructions à l'intérieur du corps de
else sont exécutées les instructions à l'intérieur du corps de if sont ignorées de l'exécution.

21
Les flux de contrôle
L'instruction if...else exécute deux codes différents selon que l'expression de test est vraie ou fausse.
Parfois, un choix doit être fait entre plus de 2 possibilités.

L'échelle if...else vous permet de vérifier entre plusieurs expressions de test et d'exécuter différentes
instructions.

22
Structures itératives
En programmation, une boucle est utilisée pour répéter un bloc de code jusqu'à ce que la condition
spécifiée soit remplie.

La programmation C a trois types de boucles :

la boucle for

boucle while

Boucle do,,,while

Nous allons en apprendre davantage sur la boucle for dans ce cours. Dans la prochaine partie, nous
découvrirons les boucles while et do...while.

23
Boucle for
La syntaxe de la boucle for est :

Comment fonctionne la boucle for ?

L'instruction d'initialisation n'est exécutée qu'une seule fois.

Ensuite, l'expression de test est évaluée. Si l'expression de test est évaluée à false, la boucle for est
terminée.

Cependant, si l'expression de test est évaluée à true, les instructions à l'intérieur du corps de la boucle for
sont exécutées et l'expression de mise à jour est mise à jour. 24
Boucle for
Encore une fois, l'expression de test est évaluée.

Ce processus se poursuit jusqu'à ce que l'expression de test soit fausse. Lorsque l'expression de test est
fausse, la boucle se termine.

25
Boucle while
La syntaxe de la boucle while est :

Comment fonctionne la boucle while ?

La boucle while évalue le testExpression à l'intérieur des parenthèses ().

Si testExpression est vrai, les instructions à l'intérieur du corps de la boucle while sont exécutées.
Ensuite, testExpression est à nouveau évalué.

Le processus continue jusqu'à ce que testExpression soit évalué à false.

Si testExpression est faux, la boucle se termine.


26
Boucle do…while
La boucle do..while est similaire à la boucle while avec une différence importante. Le corps de la boucle
do...while est exécuté au moins une fois. Alors seulement, l'expression de test est évaluée.

La syntaxe de la boucle do...while est la suivante :

27
Boucle do…while
Comment fonctionne la boucle do…while ?

Le corps de la boucle do...while est exécuté une fois. Ce n'est qu'alors que testExpression est évalué.

Si testExpression est vrai, le corps de la boucle est exécuté à nouveau et testExpression est évalué une
fois de plus.

Ce processus se poursuit jusqu'à ce que testExpression devienne faux.

Si testExpression est faux, la boucle se termine.

28
Break & continue
break

L'instruction break termine la boucle immédiatement lorsqu'elle est rencontrée. Sa syntaxe est :

L'instruction break est presque toujours utilisée avec l'instruction if...else à l'intérieur de la boucle.

29
Break & continue

30
Break & continue

continue

L'instruction continue ignore l'itération actuelle de la boucle et continue avec l'itération suivante. Sa
syntaxe est :

31
Break & continue

32
Switch case
L'instruction switch nous permet d'exécuter un bloc de code parmi de nombreuses alternatives.

Vous pouvez faire la même chose avec l‘instruction if...else…if. Cependant, la syntaxe de l'instruction
switch est beaucoup plus facile à lire et à écrire.

33
Switch case
Comment fonctionne l'instruction switch ?

L'expression est évaluée une fois et comparée aux valeurs de chaque étiquette de cas.

S'il y a une correspondance, les instructions correspondantes après l'étiquette correspondante sont
exécutées. Par exemple, si la valeur de l'expression est égale à constant2, les instructions après case
constant2: sont exécutées jusqu'à ce que break soit rencontré.

S'il n'y a pas de correspondance, les instructions par défaut sont exécutées.

34
Switch case
Remarques:

Si nous n'utilisons pas l'instruction break, toutes les instructions après l'étiquette correspondante sont
également exécutées.

La clause default à l'intérieur de l'instruction switch est facultative.

35
Exercices
Programme pour vérifier si un caractère est une voyelle ou une consonne

Programme pour trouver le plus grand nombre parmi trois nombres

Trouver la factorielle d'un nombre

Vérifier si un entier est premier ou non

Afficher les nombres premiers entre deux intervalles données

36

Vous aimerez peut-être aussi