Aller au contenu principal

Conditionnelles

Le langage C offre deux principales structures conditionnelles : l'une selon une condition, l'autre selon une valeur.

Si​

Les instructions contenues dans cette structure sont exécutées seulement si sa condition est vraie :

Logigramme du si

En langage C, le mot-clé if suivi d'une condition entre parenthèses permet d'introduire cette structure. Les instructions exécutées si cette condition est vraie sont placées entre accolades :

if (note >= 60) {
printf("Reussite\n");
}

Dans le cas où cette structure ne contient qu'une seule instruction, les accolades sont facultatives :

Diagramme syntaxique du si

Sinon​

Une branche peut être ajoutée pour exécuter certaines instructions seulement si la condition est fausse :

Logigramme du si-sinon

En langage C, le mot-clé else permet d'introduire cette branche. Les instructions exécutées si la condition est fausse sont placées entre accolades :

if (note >= 60) {
printf("Reussite\n");
}
else {
printf("Echec\n");
}

Dans le cas où cette branche ne contient qu'une seule instruction, les accolades sont facultatives :

Diagramme syntaxique du si-sinon

Cas​

Cette structure exécute les instructions du cas correspondant à une valeur entière :

Logigramme de cas

Si aucun cas ne correspond à cette valeur, des instructions par défaut peuvent être exécutées :

Logigramme de cas par défaut

En langage C, le mot-clé switch suivi d'une valeur entière entre parenthèses permet d'introduire cette structure. Les cas, introduits par le mot-clé case suivi d'une valeur constante entière unique et du caractère :, sont placés entre accolades. Le cas par défaut est introduit par le mot-clé default suivi du caractère :.

L'exécution des instructions continue, même dans les cas suivants, jusqu'à la rencontre de l'instruction break ou jusqu'à la fin de la structure :

switch (position) {
case 1:
printf("Medaille d'or\n");
break;
case 2:
printf("Medaille d'argent\n");
break;
case 3:
printf("Medaille de bronze\n");
break;
default:
printf("Aucune medaille\n");
break;
}

Les instructions break et le cas par défaut sont facultatifs :

Diagramme syntaxique de cas