Langage de programmation C (IV). Structures de contrôle I
1991/05/01 Alegria Loinaz, Iñaki | Maritxalar, Montse Iturria: Elhuyar aldizkaria
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.
Structure IF
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:
![](images/A47030.jpg)
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.
![](images/A47030-a.jpg)
En revanche, dans la partie suivante, nous avons toute la structure:
![](images/A47030-b.jpg)
Les nuances suivantes doivent être prises en compte:
- Expressions des branches, se terminant par le caractère.
- Dans les branches avec plus d'une commande, vous devez spécifier au début et à la fin de celle-ci.
- Pour exprimer l'égalité dans l'expression conditionnelle, on utilise l'agent = et non =, car dans ce cas il n'y a pas d'erreur, mais une attribution se produit et si la valeur assignée est Ø, on considérera un résultat faux et dans le reste comme vrai.
- Quand il y a une autre if (if kabiatua) dans une if, il y a un problème avec les branches, car en trouvant une else vous pouvez douter si elle correspond à la première ou à la seconde. La règle est qu'une else correspond toujours au dernier if- écrit, sans tenir compte des marges.
- Condition de la structure If? expression 1: expresion2, qui peut être remplacé par l'expression, comme le montre le programme 1.
![](images/A47030-c.jpg)
Structure SWITCH
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:
![](images/A47030-e.jpg)
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
...![](images/A47030-d.jpg)
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).
![](images/A47030-f.jpg)
Structure WHILE
La structure répétitive la plus générale est comme la phrase “while-do” de Pascal. Du point de vue syntaxique :
![](images/A47030-g.jpg)
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.
![](images/A47030-h.jpg)
Structure DO-WHILE
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:
![](images/A47030-i.jpg)
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.
![](images/A47030-j.jpg)
Dans le chapitre suivant, nous continuerons avec les structures et, avec l'aide d'exemples, nous approfondirons l'utilisation de structures de contrôle.
![](https://elia.eus/static/elhuyar/img/elia_RGB.png)
Gai honi buruzko eduki gehiago
Elhuyarrek garatutako teknologia