Partage
  • Partager sur Facebook
  • Partager sur Twitter

fermeture de la console (erreur windows)

au secours

Sujet résolu
    30 mai 2006 à 20:21:32

    Salut,
    je viens de découvrir ce site et est commencéa apprendre le cours sur C. J'ai malheureusement quelques problème.
    J'ai fait un programme de calculette pour m'entrainer qui je pense est correct; le voiçi:

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

    int main(int argc, char *argv[])
    {long resultat = 0, nombre1 = 0, nombre2 = 0, operation = 0;
    printf ("nombre 1?");
    scanf ("%ld", &nombre1);
    printf ("nombre 2?");
    scanf ("%ld", nombre2);
    printf ("1.multiplication\n");
    printf ("2.division\n");
    printf ("3.addition\n");
    printf ("4.soustraction\n");
    scanf ("%ld", &operation);

    switch (operation)
    { case 1:
    resultat = nombre1 * nombre2;
    printf ("%ld * %ld = %ld", nombre1, nombre2, resultat);
    break;
    case 2:
    resultat = nombre1 / nombre2;
    printf ("%ld / %ld = %ld", nombre1, nombre2, resultat);
    break;
    case 3:
    resultat = nombre1 + nombre2;
    printf ("%ld + %ld = %ld", nombre1, nombre2, resultat);
    break;
    case 4:
    resultat = nombre1 - nombre2;
    printf ("%ld - %ld = %ld", nombre1, nombre2, resultat);
    default:
    printf ("apprenez a lire pauvre con c'est déja assez difficile de faire un programme");}


    system("PAUSE");
    return 0;

    system("PAUSE");
    return 0;
    }
    Je ne sais pas si il est bon mais en tout cas il n'y a plus de bug.
    l'ordi arrive à compiler, me demande le premier chiffre, le deuxième, puis erreur windows comme quoi mon projet à rencontré une ereur et doit fermé; je ne peux donc pas voir si il marche et je ne sais pas ou est le problème. rapport d'erreur ( si ça peut aider):
    AppName: projet1.exe AppVer: 0.0.0.0 ModName: msvcrt.dll
    ModVer: 7.0.2600.2180 Offset: 00034995
    sinon j'ai tout le rapport d'erreur mais c'est très long et je ne pense pas que cela soit utile.
    Merçi du coup de main.
    • Partager sur Facebook
    • Partager sur Twitter
      30 mai 2006 à 20:23:19

      Utilise la balise code et tu as oublié un & dans un de tes scanf.
      • Partager sur Facebook
      • Partager sur Twitter
        30 mai 2006 à 20:36:19

        qu'es ce que c'est la balise code????
        • Partager sur Facebook
        • Partager sur Twitter
          30 mai 2006 à 20:38:04


          cette balise qui permet de voir ton code avec une coloration qui permet de voir les erreurs plus rapidement.

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

          int main(int argc, char *argv[])
          {long resultat = 0, nombre1 = 0, nombre2 = 0, operation = 0;
          printf ("nombre 1?");
          scanf ("%ld", &nombre1);
          printf ("nombre 2?");
          scanf ("%ld", nombre2);
          printf ("1.multiplication\n");
          printf ("2.division\n");
          printf ("3.addition\n");
          printf ("4.soustraction\n");
          scanf ("%ld", &operation);

          switch (operation)
          { case 1:
          resultat = nombre1 * nombre2;
          printf ("%ld * %ld = %ld", nombre1, nombre2, resultat);
          break;
          case 2:
          resultat = nombre1 / nombre2;
          printf ("%ld / %ld = %ld", nombre1, nombre2, resultat);
          break;
          case 3:
          resultat = nombre1 + nombre2;
          printf ("%ld + %ld = %ld", nombre1, nombre2, resultat);
          break;
          case 4:
          resultat = nombre1 - nombre2;
          printf ("%ld - %ld = %ld", nombre1, nombre2, resultat);
          default:
          printf ("apprenez a lire pauvre con c'est déja assez difficile de faire un programme");}


          system("PAUSE");
          return 0;

          system("PAUSE");
          return 0;
          }


          • Partager sur Facebook
          • Partager sur Twitter
            30 mai 2006 à 20:38:58

            La balise code permet de presenter ton code correctement.
            Tu n'a visiblement pas lu le Post-it là dessus.

            Va donc le lire !
            • Partager sur Facebook
            • Partager sur Twitter
              30 mai 2006 à 20:41:12

              Ah déja, en ayant corrigé mon erreur, ça marche. maintenent, il faut que j'améliore tout ça.
              • Partager sur Facebook
              • Partager sur Twitter
                30 mai 2006 à 21:34:47

                Il te manque un "break" au "case 4".
                Tu as mis 2 system("PAUSE");.

                ;)
                • Partager sur Facebook
                • Partager sur Twitter
                  30 mai 2006 à 22:27:23

                  La présentation, c'est bien.

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

                  int main(int argc, char *argv[])
                  {
                      long resultat = 0, nombre1 = 0, nombre2 = 0, operation = 0;
                      printf ("nombre 1?");
                      scanf ("%ld", &nombre1);
                      printf ("nombre 2?");
                      scanf ("%ld", &nombre2); /* il manquait un & ici */
                      printf ("1.multiplication\n");
                      printf ("2.division\n");
                      printf ("3.addition\n");
                      printf ("4.soustraction\n");
                      scanf ("%ld", &operation);

                      switch (operation)
                      {
                          case 1:
                              resultat = nombre1 * nombre2;
                              printf ("%ld * %ld = %ld", nombre1, nombre2, resultat);
                              break;
                          case 2:
                              resultat = nombre1 / nombre2;
                              printf ("%ld / %ld = %ld", nombre1, nombre2, resultat);
                              break;
                          case 3:
                              resultat = nombre1 + nombre2;
                              printf ("%ld + %ld = %ld", nombre1, nombre2, resultat);
                              break;
                          case 4:
                              resultat = nombre1 - nombre2;
                              printf ("%ld - %ld = %ld", nombre1, nombre2, resultat);
                              break; /* t'avais oublié le break là */
                          default:
                              printf ("apprenez a lire pauvre con c'est déja assez difficile de faire un programme");
                      }

                      system("PAUSE"); /* Un seul suffit */
                      return 0;
                  }
                  • Partager sur Facebook
                  • Partager sur Twitter

                  fermeture de la console (erreur windows)

                  × 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