Le if

if (condition) { ... }

et if (condition) { ... } else { ... }

On se sert de ceci pour n'exécuter une suite d'instructions que si une condition est vraie. exemple :

#include <stdio.h> /* directive du preprocesseur */ void main() { int i; printf("Entrez moi un entier : ") ; scanf("%d",&i); if ( i >= 0 ) { printf("%d est positif\n",i); } else { printf("%d est negatif\n",i); } if ( ( i % 2 ) == 0 ) { /* On teste si i est divisible par 2 */ printf("%d est divisible par 2",i); } }

Remarquez ici l'opérateur %, il est appelé modulo, il donne le reste de la division entière du premier nombre par le deuxième. ex : 46%5=1 car 46=9*5+1 et combien fait 26%3 ??? et bien, ça fait 2.

Exercice :

Faites un programme qui demande a l'utilisateur 1 nombre, et qui affiche si le nombre est divisible par 2, par 3 ou si il n'est divisible par aucun des deux. solution

Pour tester plusieurs conditions, par exemple si on veut que i>0 ET j<0, on écris if ((i>0)&&(j<0)) et si c'est i>0 OU j<0, on écris if ((i>0)||(j<0)) ( | étant le pipe ).

Le switch

Le plus simple est de donner un exemple :

#include &lt;stdio.h&gt; /* directive du preprocesseur */ void main() { int i; printf("Entrez moi un entier : "); scanf("%d",&i); switch (i) { case 1: case -1: { printf("presque !\n"); break; } case 0: { printf("Gagne !!!!\n"); break; } default: { printf("Tu est loin :(\n"); break; } } }

Ce programme est un petit jeu : si l'utilisateur entre 0, il s'écrit "Gagne !!!!", si l'utilisateur entre 1 ou -1, il s'écrit "presque !", et dans tous les autres cas, "Tu est loin :(".

En fait, c'est très simple, le programme va chercher si un case correspond à la valeur donnée au switch, si il la trouve, il exécute les instructions qui suivent jusqu'à ce qu'il arrive a la fin du switch, soit jusqu'à un break. Si il ne trouve aucun case correspondant, il exécutera les instructions a la suite de default



Dernière révision :
Date de Création : 18 mars 1998
Copyright ©
Mathieu ARNOLD 1998