Partage
  • Partager sur Facebook
  • Partager sur Twitter

[Problem] Affichage des varialbes

question de debutant ... je sais ^^

    3 décembre 2005 à 14:19:12

    Salut , j'ai un ptit problem de comilation voila :


    déclaré mes variables à 0
    j'ai mis des scanf reportant au diferente variable ,

    il y a 6question puis un rendu qui affiche un sorte de carte d'identité ( pour mentrainer au chapitre 4 sur les variables )

    /*
    // rendu
    */

    printf ("   [-- RESULTAT --]   \n");
    printf ("\n");
    printf ("\n");
    /*
     liste des variables :
    name
    prenom
    age
    nation
    live
    naissance
    */

    printf ("Nom                   : %d    \n", &name            ;)
    printf ("Prenom                : %d    \n", &prenom          ;)
    printf ("Age                   : %d    \n", &age             ;)
    printf ("Date de naissance     : %d    \n", &nation          ;)
    printf ("Nationaliter          : %d    \n", &live            ;)
    printf ("Lieu de residence     : %d    \n", &naissance       ;)
    printf ("\n")
    printf ("\n")
    printf ("Voila les informations que vous avez rentrer plus haut\n");
    printf ("\n")
    system ("PAUSE");
    system ("CLS");
    /*
    // fin rendu
    */


    J'ai l'erreur compilation suivante :

    "printf ("Nom : %d \n", &name ;)"
    syantax error before ';' token

    ps: j'utilise Dev-c++ pour info

    -------------------------------------------------------------
    merci de m'aider car je debute !
    A+
    • Partager sur Facebook
    • Partager sur Twitter
      3 décembre 2005 à 14:22:51

      le point virgule tu le met apres la parenthese et pas avant
      • Partager sur Facebook
      • Partager sur Twitter
        3 décembre 2005 à 14:23:50

        Il me semble que printf("Nom\t\t\t: %d\t\n", &name); soit plus adapté.
        J'ai remplacé tes espaces par des tabulations au passage ;)

        Bisous
        • Partager sur Facebook
        • Partager sur Twitter
        Anonyme
          3 décembre 2005 à 14:26:37

          Salut,
          Il y a deux erreurs:
          La premiere, c'est que tu passes l'adresse de la variable et nom sa valeur. Dans ton printf il faut donc mettre name et pas &name.
          Ensuite, le point virgule à la fin de ton insctruction. Donc en clair ca doit faire quelque chose dans ce genre:
          printf ("Nom : %d \n",name );

          @+
          • Partager sur Facebook
          • Partager sur Twitter
            3 décembre 2005 à 14:27:31

            j'arrive a compiler mais dans mon programmes je dit que je m'apelle RK2 et dans le rendu j'ai :

            Nom : 2293600
            Prenom : 2293120
            ...


            bizzar :( ? ou est-ce que je me suis encore trompé :euh::colere:
            • Partager sur Facebook
            • Partager sur Twitter
              3 décembre 2005 à 14:29:41

              :/

              • on ne met pas de & pour un printf.
              • Les chaînes ne se déclarent pas avec long ni int ni double et ne s'affichent pas avec %d
              • Chaque instruction se termine par un ;, et à la fin de l'instruction, pas au milieu.
              • system("PAUSE"); peut encore servir sur windows, et vraiment à la limite, mais system("CLS"); la ne sers à rien, mais alors à rien du tout


              Attendez les prochains cours avant de faire nawak, on va pas vous corriger tout le temps pour assouvir votre impatience
              • Partager sur Facebook
              • Partager sur Twitter
                3 décembre 2005 à 14:31:40

                system CLS mefface mon programme et me met une fenetre vide :)

                sinon pour le reste dacord et meci ;)

                jsui pas un zero mais un -1 !!
                ( ben ui les nombres relatif sa existe ! )
                • Partager sur Facebook
                • Partager sur Twitter
                  3 décembre 2005 à 14:40:22

                  le probleme c'est que tu places tes virgules à l'intérieur de la parenthèse. en plus, je crois que tu t'es trompé en plaçant tes variables et troisième chose, quand il s'agit de suite de caractères (ou string) tu ne dois pas utiliser %d mais %s et si c'était un seul caractère, tu devrais utiliser %c (j'entends par caractère une lettre et pas un chiffre).

                  voila le bon code entier :


                  #include <stdio.h>
                  #include <stdlib.h>

                  int main(int argc, char *argv[])
                  {
                  char name[20] , prenom[20] , nation[20] , live[20] , naissance[10];
                  long age = 0;

                  printf("Tapez votre nom : ");
                  scanf("%s", &name);
                  printf("Tapez votre prenom : ");
                  scanf("%s", &prenom);
                  printf("Tapez votre age (jj/mm/aaaa) : ");
                  scanf("%s", &naissance);
                  printf("Tapez votre age : ");
                  scanf("%d", &age);
                  printf("Tapez votre nationalite : ");
                  scanf("%s", &nation);
                  printf("Tapez votre lieu de residence : ");
                  scanf("%s", &live);

                  printf ("\n\nVoila les informations que vous avez rentrer plus haut :\n");
                  printf ("Nom                   : %s    \n", name            );
                  printf ("Prenom                : %s    \n", prenom          );
                  printf ("Age                   : %d    \n", age             );
                  printf ("Date de naissance     : %s    \n", naissance       );
                  printf ("Nationalite           : %s    \n", nation          );
                  printf ("Lieu de residence     : %s    \n", live            );
                  printf ("\n\n");

                  system ("PAUSE");
                  return 0;
                  }



                  voila :)
                  • Partager sur Facebook
                  • Partager sur Twitter
                    3 décembre 2005 à 14:41:44

                    Secret (cliquez pour afficher)
                    roooooh on m'a encore volé ce que je voulais dire a 1 minute d'interval! :colere:
                    • Partager sur Facebook
                    • Partager sur Twitter
                      3 décembre 2005 à 14:48:07

                      Pas de bol, ta dernière explication était fausse.

                      Tu oublies les & dans le scanf, et [20] c'est pas le nombre maximal de caractères possibles, mais le (nombre maximal - 1) de caractère possibles : il y a un \0 à la fin.

                      edit : oui t'as édité, mais ca règle pas le problème :p
                      • Partager sur Facebook
                      • Partager sur Twitter
                        3 décembre 2005 à 14:49:53

                        j'ai édité avant que tu marque ton mess :p
                        • Partager sur Facebook
                        • Partager sur Twitter
                          3 décembre 2005 à 14:52:09

                          Oui mais quand même, évite de dire des choses à des débutants quand tu n'es pas sûr, ou au moins précise que c'est pas forcément vrai.

                          Quand tu dis 'je vais l'expliquer pour la dernière fois', on dirait que c'est un cours que tu maitrises ultra-bien et que t'as déja donné plein de fois, et ensuite on voit une connerie répétée deux fois et une erreur dans le nombre de caractères possibles, ca fait pas très classe ;)
                          • Partager sur Facebook
                          • Partager sur Twitter
                            3 décembre 2005 à 14:53:37

                            bah je croyais que c'était juste quand j'avais compilé ca marcher o_O
                            • Partager sur Facebook
                            • Partager sur Twitter
                              3 décembre 2005 à 15:31:33

                              moi j'ai compiler
                              merci a vous tous de m'avoir aider :)
                              • Partager sur Facebook
                              • Partager sur Twitter

                              [Problem] Affichage des varialbes

                              × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                              × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                              • Editeur
                              • Markdown