| |
Programmation C |
|
Test
SWITCH :
switch(<expression>)
{
case valeur1 : <instructions1>; break;
case valeur2 : <instructions2>; break;
case valeur3 : <instructions3>; break;
case valeur4 : <instructions4>; break;
case valeur5 : <instructions5>; break;
default:<expresions>;
}
<expression> renvoi une certaine valeur :
Si la valeur renvoyée = valeur1 alors, <instructions1> est exécuté.
Si la valeur renvoyée = valeur2 alors, <instructions2> est exécuté.
etc.
Note : si la valeur renvoyée par <expression> est
par exemple égale à
valeur1,
<instruction1>
est exécuté, ainsi que toutes les instructions suivantes. Si ce n'est pas le
résultat souhaité, l'instruction
break;
permet de sortir prématurément de test switch.
Si aucune des valeurs ne correspondent à l'expression, un bloc
default:
(optionnel) peut être exécuté.
L'instruction break; est dans ce cas inutile, puisque aucune instruction ne suit
dans le test switch.
exemple :
switch(x-y)
{
case 10 : printf("x-y égal 10 !"); printf("Etes vous content ?"); break;
case 11 : printf("x-y égal 11 !"); printf("Etes vous content ?"); break;
case 12 : printf("x-y égal 12 !"); printf("Etes vous content ?"); break;
case 13 : printf("x-y égal 13 !"); printf("Etes vous content ?"); break;
case 14 : printf("x-y égal 14 !"); printf("Etes vous content ?"); break;
case 15 : printf("x-y égal 15 !"); printf("Etes vous content ?"); break;
default: printf("désolé, x-y ne donne pas une valeur entière comprise entre 10
et 15");
}
Boucle FOR :
for(n=1;n<=10;n++)
{
printf("n est égal à %i \n",n);
}
Ceci donne à l'écran :
n est égal à 1
n est égal à 2
n est égal à 3
n est égal à 4
n est égal à 5
n est égal à 6
n est égal à 7
n est égal à 8
n est égal à 9
n est égal à 10
Effectivement, la boucle for s'exécute tant que n est inférieur ou égal à 10.
Pour l'exemple si dessus, la variable n est appelée une variable de contrôle.
D'une manière plus générale, la syntaxe attendue par l'instruction FOR est la
suivante :
for(<expression1>;<expression2>;<expression3>)
{
bloc;
}
<expression1> :
Initialisation
<expression2> : Condition de réalisation de la boucle
<expression3> : Réinitialisation
Note : Avant l'exécution du bloc, la condition de réalisation est
systématiquement vérifiée. Si celle-ci est vraie, alors ce bloc est réalisé,
puis, le processus de réinitialisation des variables de controles s'enclenche.
Dès que la condition de réalisation est fausse, l'instruction a terminé son
travail.
Le bloc peut ne jamais s'exécuter, ou s'exécuter à l'infini
Exemple de boucle infinie :
for( ; ; )
{
bloc; // Aucune condition de réalisation : condition toujours vraie !
}
|