Qu'est ce qu'une structure conditionnelle ?
Écrire des programmes C en utilisant l'instruction if .. else if .. else
Écrire des programmes C en utilisant l'instruction switch
Écrire des programmes C en utilisant l'opérateur ?:
Les structures conditionnelles vous permet d’exécuter un bloc de code si certaines conditions sont vérifiées.
Les instructions C permettant de tester des conditions sont :
if .. else if .. else
switch .. case
L'opérateur ? :
Permet d’exécuter le bloc de code de la première condition vérifiée. On commence par vérifier la condition de la clause if, si c'est vraie on exécute le bloc correspondant sinon on vérifie la condition de la clause else if (si elle existe) et ainsi de suite. Si aucune condition n'est pas vraie on exécute le bloc de code de la clause else (si elle existe).
Une condition est vraie en C si la valeur de son expression est différente de 0. Si elle est égale à 0 la condition est considérée comme fausse.
if (expression1) {
Bloc_instructions1
}else if (expression2){
Bloc_instructions2
...
else{
Bloc_instructions
}
#include <stdio.h>
int main() {
int x = 2;
if (x > 0){
printf("Nombre positif");
}else {
printf ("Nombre négatif");
}
}
comme l'instruction if, l'instruction switch permet d’exécuter un ou plusieurs blocs d'instructions si une certaine condition est vérifiée. la condition est définie par une expression. Les types acceptés pour l'expression sont : char, short, int, long,
Dans l'instruction switch on définit plusieurs cas (case). Chaque cas correspond à une valeur que peut prendre l'expression. Une fois la valeur spécifiée dans le cas correspond à la valeur de l'expression le bloc correspondant est exécuté. Notez qu'il n'est pas nécessaire de mettre des accolades autour du bloc à exécuter.
L'instruction switch est souvent associée avec l'instruction break. Ainsi, si le bloc d'instructions à exécuter ne contient pas par l'instruction break, alors l'exécution continue et passe aux bloc suivants jusqu'à ce qu'on trouve une instruction break ou qu'on atteint la fin de l'instruction switch.
switch (expression) {
case const_expr1 : instructions
case const_expr2 : instructions
case const_exprN : instructions
default : instructions
}
#include <stdio.h>
int main() {
int color = 1;
switch (color){
case 0: printf("Black\n");
break;
case 1: printf("White\n");
break;
case 2: printf("Yellow\n");
break;
default: printf("Erreur\n");
break;
}
}
White
#include <stdio.h>
int main() {
int color = 1;
switch (color){
case 0: printf("Black\n");
case 1: printf("White\n");
case 2: printf("Yellow\n");
default: printf("Erreur\n");
break;
}
}
White
Yellow
Erreur
(expression) ? expr1 : expr2;
L'opérateur conditionnel ?: évalue une expression et renvoie le résultat de l'une des deux expressions, selon la cas : si expression est évaluée à vrai alors expr1 est retournée sinon expr2 est retournée.