C-6-

Instructions itératives
Les boucles sont des instructions répétitives. Le C présente trois types de structures de contrôle itératives permettant de réaliser ce qu’on appelle des boucles afin de pouvoir exécuter plusieurs fois une plusieurs instructions. Les instructions sont alors répétées tant qu’un test d’arrêt n’est pas spécifié, si jamais aucun test d’arrêt n’est spécifié (ce qui n’est absolument pas à faire !!!) on est en présence d’une boucle infinie. Chaque passage dans la boucle s’appelle une itération
La boucle « for »

La boucle POUR se nomme for, c’est une boucle détérministe car on connait à l’avance le nombre d’itérations . Elle se sert d’une variable pour compter le nombre d’itérations effectuées: le compteur de boucle.

La syntaxe correspondant à cette structure répétitive est la suivante :

for (initialisation du compteur ; condition ; opération sur le compteur) { 
    Instructions à exécuter tant que la condition est vraie
}

#include <stdio.h>
 vraie}
 int main () {
     int somme = 0;
     int compteur;
     for (compteur =1; compteur < 6; compteur ++)
     {
         somme = somme + compteur;
     }
     printf (" la somme des 5 premiers nombres est %i \n", somme);
}

Dans l’instruction for l’expression compteur = 1 précise la valeur initiales du compteur, compteur < 6 indique le test d’arrêt, compteur ++ spécifie le pas de progression.

La boucle « while »

la boucle « TANT QUE » se nomme while, c’est une boucle non déterminisme car on ne connait pas à l’avance le nombre d’itérations. Son test est évalué au début de chaque itération. La boucle peut donc être exécutée 0 fois sil le est est faux au premier passage et n fois en fonction de la condition d’arret de la boucle. Avec cette structure de contrôle, tant qu’une condition est vraie, les instructions lui correspondant sont exécutées.

La syntaxe correspondant à la première forme de cette structure répétitive est la suivante:

"while (condition) une seule instruction à effectuer si condition vraie"

#include <stdio.h>
int main () {     
    int i = 1;
    while ( i <= 4)  printf("lavaleur de i est %i \n", i++);
    printf("fin du programme \n");
}

 

La syntaxe correspondant à la deuxième forme de cette structure répétitive est la suivante:

 "while (condition) { 
     plusieurs instructions à effectuer si la condition est vraie"
  }

#include <stdio.h>
 int main () {
     int meteo = 1;
     while ( meteo <= 4) {
         switch(meteo)
         {
             case 1:
                 printf("Il fait beau \n");
                 break;
             case 2:
                 printf("il pleut \n");
                 break;
             case 3:
                 printf("il neige  \n");
                 break;
             default:
                 printf("Il fait un temps bizarre \n");
                 break;
         }
         meteo = meteo++;
     }
 }

 

La boucle « do while »

La seconde structure de boucle que l’on appelle « FAIRE TANT QUE » est une variante de la précédente. Son test d’arrêt est évalué à la fin de la boucle ce qui implique qu’elle est toujours exécutée au moins une fois.

La syntaxe correspondant à cette structure répétitive est la suivante :

do {
 Instructions à exécuter tant que la condition est vraie.
 } while ( condition );

/* La somme des 5 premiers nombres */
 #include <stdio.h>
 int main () {
     int somme = 0;
     int compteur = 0;
     do
     {
         compteur++;
         somme = somme + compteur;
     } while (compteur <= 4);
     printf (" la somme des 5 premiers nombres est %i \n", somme);
 }
Les bases de C : Fin de l’initiation au langage C