IN3R11-2 { CCours 2Damien MASSONmassond@esiee.fr23 novembre 2010Boucles et structures conditionnellesfor, while, do while et if, else, switchComme en Java (ou plut^ ot l’inverse).for()fg, while()fg ou dofgwhile() ?comme vous voulez !celle qui permet de rendre le code le plus lisible possiblefor(init , init , ..., init ;continuation ;incr , incr ...) : permet1 2 n 1 2de ne regarder qu’une seule ligne pour comprendre la bouclewhile(cond) : equivalent plus joli de for(;cond;)do while :permet de faire toujours un passage sans traiter le premier casa part ;peut souvent ^etre evitee en initialisant judicieusement lesvariables ;on ne lit la condition de continuation qu’a la n, pas toujourslisible...2/2466Booleens, operateurs logiquespas de type boolean en C (vous le savez deja)convention C, 0 : faux, = 0 : vraic’est l’inverse de la convention UNIX pour le retour desprocessus (0 : OK, = 0 : code d’erreur)int main(int argc , char argv[]) fprintf ("4 AND 6\t= %d\n""4 AND 0\t= %d\n" $>./a. out"4 OR 6\t= %d\n" 4 AND 6 = 1"0 OR 0\t= %d\n" 4 AND 0 = 0"NOT 17\t= %d\n" 4 OR 6 = 1"NOT 0\t= %d\n" , 0 OR 0 = 04&&6, 4&&0, NOT 17 = 04jj6 , 0jj0 , NOT 0 = 1!17 , !0) ;return 0;g3/24Evaluation paresseuseoperateurs && et jj \paresseux"evaluation de gauche a droites’arr^ete des que possible :(a=0 && b=c) / b n’ est jamais affecte /(a=1 jj b=c) / b n’ est jamais affecte /4/24Les tableauxElements contigus de m^eme ...
Voir