En C, il existe plusieurs types de boucles :
for (initialisation ; condition d'arrêt ; incrémentation) { ... }
En général, on utilise une boucle for
quand on sait a l'avance le nombre de boucles à effectuer.
Ce qui est entre les parenthèses est découpé en 3 parties séparées par des ;
(point virgule). Tout d'abord, on a la partie appelée initialisation. on initialise donc les variables dont on aura besoin dans la boucle (par exemple : un compteur) . Ensuite : la condition d'arrêt, c'est un test (les différents opérateurs de comparaison sont : <
, >
, <=
(inférieur ou égal), >=
, ==
(égal) et !=
(différent)), tant que ce condition sera vraie, on continuera a faire les instructions qui sont dans la boucle (ce qui est entre les accolades) et appelées corps de boucle. Et enfin : la partie incrémentation, cette partie est traitée après que le corps de boucle soit termine et avant de tester la condition d'arrêt, elle est appelée incrémentation, car c'est généralement là que l'on incrémente les variables utilisées dans le corps de boucle. Tout est donc traité dans cet ordre :
Un ch'tit exemple :
Tout d'abord : #define
. C'est une directive du préprocesseur qui remplace toutes les occurrences du premier terme à la suite (ici TAILLE
) par ce qu'il reste sur la ligne (ici le 8 et le commentaire). Cela permet de définir des constantes.
Puis le for (i = 0 ; i < TAILLE ; i = i + 1 ) { ... }
. ici, l'initialisation est : i = 0
. La condition d'arrêt est : i < TAILLE
. La partie incrémentation est : i = i + 1
.
Il est possible de ne pas spécifier la taille des tableaux, spécialement quand il s'agit de chaînes de caractères, si on donne le tableau à mettre directement. par exemple char c[] = "Message"
. Le compilateur est capable d'évaluer la taille de la chaîne et de dimensionner le tableau en conséquences
Exercices :
Ecrire un programme qui crée un tableau de 10 entiers, demande à l'utilisateur d'entrer les nombres, puis fait la moyenne et l'affiche. solution
while (condition d'arrêt) { ... }
On utilise la boucle while quand on ne sait pas combien d'itérations seront nécessaires.
La boucle while est plus simple a utiliser. Au début, elle commence par tester la condition, si elle est vraie, on exécute le corps de boucle, puis on reteste la condition... si la condition est fausse, on passe a la suite :
par exemple :
Ce programme demande un nombre à l'utilisateur et affiche tous les nombres entiers entre ce nombre et sa racine carrée.
do { ... } while (condition d'arrêt);
On utilise la boucle do ... while quand on ne sait pas combien d'itérations seront nécessaires, et quand on veux que le corps de boucle soit exécute au moins une fois.
Cette boucle se comporte ainsi :
Exercice :
Affichage d'un triangle
Ecrire un programme qui lit un entier n entré par l'utilisateur et affiche un triangle isocèle de base 2n-1 et de hauteur n. Par exemple, pour n=4 :
*
**
***
****
***
**
*
Comment permettre à l'utilisateur de choisir le symbole utilisé ?
Dernière révision :
Date de Création : 18 mars 1998
Copyright © Mathieu ARNOLD 1998