Permet de sélectionner ou de reproduire des expressions via des structures de contrôle. Bien que les expressions analysées dans le chapitre précédent permettent d'écrire des programmes totalement linéaires et séquentiels, la plupart des programmes doivent décider d'exécuter ou non certaines commandes selon les données, par des structures conditionnelles et de répéter l'exécution des ensembles de commandes en utilisant des structures répétitives. Le but de ce chapitre est la rédaction et l'utilisation de ces structures en langage C.
Parmi les structures conditionnelles, les plus utilisées sont deux et le langage C a deux structures (if) et une option (switch). Dans la première, on choisit entre deux branches en fonction de la valeur d'une expression logique. Dans la seconde, cependant, vous pouvez mettre autant de branches que vous le souhaitez.
C est très riche en structures répétitives, car il a trois types: tandis que (while), refrain (do/while) et en changeant (for). Ses caractéristiques seront analysées plus tard.
Cette structure ou phrase est dans n'importe quel langage et en C tue les caractéristiques générales, c'est-à-dire qu'une expression logique est évaluée et que la branche correspondante à la suivante ou à défaut ri (else) est exécutée en fonction du résultat.
La syntaxe structurelle est la suivante:
Comme on peut le voir, l'embranchement est facultatif, distinguant la structure complète ou simple en fonction de l'apparition.
Par exemple, la structure if qui apparaît dans la partie suivante du programme est simple.
En revanche, dans la partie suivante, nous avons toute la structure:
Les nuances suivantes doivent être prises en compte:
Cette structure permet de générer le nombre de branches que nous souhaitons en fonction de la valeur d'une expression, en commençant chaque branche par un mot-clé case (sauf la dernière, qui peut commencer par le mot-clé default). La syntaxe correspondante est:
Comme vous pouvez le voir, les expressions dans les branches sont facultatives comme la branche default. Si plus d'une expression est placée sur une branche, il n'y a pas besoin d'y écrire et}, mais chacun doit en finir avec le caractère.
Quand un swicth est trouvé dans l'exécution, l'expression baldin est évaluée et recherchée en fonction de la valeur dans laquelle l'expression comptable a la même valeur. Si ces branches sont trouvées, les sentences correspondant à cette branche et aux suivantes sont exécutées. Dans la structure “case” de Pascal, seules les expressions correspondant à la branche sont effectuées. Cependant, si C le souhaite, la dernière expression des branches sera brune
...Si la valeur de l'expression n'est pas dans les branches, les expressions de la branche default seront exécutées si cette branche a été écrite.
Le programme 2 explique l'utilisation conventionnelle du commutateur (utilisé par le break).
La structure répétitive la plus générale est comme la phrase “while-do” de Pascal. Du point de vue syntaxique :
On évalue l'expression de baldin et si elle est certaine (pas Ø) on réalise les expressions propres à la structure et on réévalue l'expression en formant un bigal.
Lorsque l'évaluation de l'expression est fausse, elle passe à la sentence suivante.
L'expression entre parenthèses est la condition de répétition et le corps dans lequel l'autre expression ou ensemble d'expressions est répété. Si le corps a plusieurs sentences au début et à la fin sont nécessaires. Dans le programme 4, vous pouvez voir une utilisation.
While
Dans cette modification de la structure, l'évaluation de la condition se produit à la fin de l'adoucissement. Par conséquent, dans cette structure de do-while le corps fonctionne au moins une fois. En revanche, dans la structure while, il peut arriver que la première évaluation soit fausse. Dans le reste, ils sont exactement les mêmes.
La syntaxe de la structure est la suivante:
Dans le programme 5, vous pouvez voir les modifications apportées au programme du factoriel do-while.
if
On utilise la nouvelle pour que les factoriels de Ø et 1 fonctionnent correctement.
Dans le chapitre suivant, nous continuerons avec les structures et, avec l'aide d'exemples, nous approfondirons l'utilisation de structures de contrôle.