1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.
Dismiss Notice
Welcome to our Education website, plz like our page facebook to support us. Thank You and wish you good navigation

Exercice Pour les intelligent Numéro 2

abdelouafiDec 30, 2016

?

Quel est le résultat de ce programme??

  1. 1 et 1

    0 vote(s)
    0.0%
  2. 2 et 2

    1 vote(s)
    100.0%
    1. abdelouafi

      abdelouafi Administrator Staff Member

      Messages:
      202
      Likes Received:
      9
      Trophy Points:
      18
      Joined
      Sep 13, 2016
      C'est quoi le résultat de ce programme ??
      Code:
      #include<stdio.h>
      #include<conio.h>
      
      void main() {
         int i = 0, j = 0;
         j = i++ + ++i;
         printf("%d\n", i);
         printf("%d\n", j);
      }

      Cliquez sur "solution" en haut de la page pour voir la correction
       

      Attached Files:

      Last edited: Dec 30, 2016
      Loading...
    2. Abdelilah Boutizoua

      Abdelilah Boutizoua New Member

      Messages:
      2
      Likes Received:
      3
      Trophy Points:
      3
      Joined
      Oct 20, 2016
      i = 2
      j = 2
       
      1 People like this
    3. abdelouafi

      abdelouafi Administrator Staff Member

      Messages:
      202
      Likes Received:
      9
      Trophy Points:
      18
      Joined
      Sep 13, 2016
      oui c'est correcte, mais il faut démontrer pourquoi??
       
    4. achbaro

      achbaro New Member Staff Member

      Messages:
      1
      Likes Received:
      1
      Trophy Points:
      3
      Joined
      Dec 30, 2016
      2 2
       
      1 People like this
    5. abdelouafi

      abdelouafi Administrator Staff Member

      Messages:
      202
      Likes Received:
      9
      Trophy Points:
      18
      Joined
      Sep 13, 2016
      oui ci correct
       
    6. mohssine

      mohssine New Member

      Messages:
      2
      Likes Received:
      0
      Trophy Points:
      1
      Joined
      Oct 13, 2016
      i=2 et j=2
       
      une image vaut mieux qu'une longue explication.
      [​IMG]

      j= i++ + ++i;
      L'instruction ci-dessus contient quatre opérations:
      1. Affectation à j
      2. Post incrémentation de i
      3. pré incrémentation de i
      4. et l'opérateur +
      Maintenant on va voir le classement de ces 4 opérations:
      [​IMG]

      1. La première étape l'instruction de pré-incrémentation sera exécutée en premier, le i sera incrémenté (i=1)

      2. Dans la seconde étape, l'instruction de post incrémentation sera exécutée. Mais elle n'incrémentera pas la valeur réelle de i mais l'incrémentation sera en cours d'exécution. donc on utilisera i=1 puis le i sera incrémentée.

      3. Donc j= 1+1 , j=2


      Étape 1 : j = i++ + 1;

      Étape 2 : j = 1 + 1; (post-incrémentation en cours d'exécution)

      Étape 3 : j = 2; (Addition)

      Étape 4 : j = 2; (affectation)

      Étape 5 : post-incrémentation sera exécuté donc i=2

Share This Page

Share