Programmation en C question peut etre bete ;)

Bonjour, je seche quelque peu sur un truc assez basique je l’accorde
voici la ligne de code:

#include <stdio.h>

main()
{int i, n;
for (i = 0, n = 0; i < 3; i++, n+= i, printf ("A: i= %d, n= %d\n", i, n) );
printf ("B: i= %d, n= %d\n", i, n);
}

le resultat obtenu est
A: i=1, n=1
A: i=2, n=3
A: i=3, n=6
B: i=3, n=6

ma question est liée au i++
Pkoi est-il pris en compte des le debut (alors que ca n’est pas un ++i) dans le printf et pkoi le resultat n’est donc pas:

A: i=0, n=0
A: i=1, n=1
A: i=2, n=3
A: i=3, n=6
B: i=3, n=6

A partir de qd l’incrémentation de i est elle prise en compte dans le programme?

mrci d’avance!

fastoche :

for (
  i = 0, n = 0;
  i < 3;
  i++, 
  n+= i,
  printf ("A: i= %d, n= %d\n", i, n)
);

Tu ne fais pas ton printf dans l’instruction répétée, mais après contrairement à ça :

for (
  i = 0, n = 0;
  i < 3;
  i++, 
  n+= i
)
    printf ("A: i= %d, n= %d\n", i, n);

merci :slight_smile: