Partage
  • Partager sur Facebook
  • Partager sur Twitter

erreur TP du pendu

Sujet résolu
    16 août 2017 à 19:32:48

    bonjour j'apprends le c avec le cour de C et arrivé au TP du pendu il m'arrive 2 erreurs que je n'arrives pas à corriger

    qui sont

    24-error:syntax error before'{' token 

    28-error synthat error before while

    voici le code:

    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    char pareil(char lettre,char motMystere);
    int main()
    {
        int i;
        char motMystere[100]= "marron\n";
        char motSaisie = 0;
        int coups = 10;
    
        for (i=0;i<10;i++)
        coups--;
            printf("il vous reste %d coups",coups);
            printf("choisissez une lettre");
            scanf("%c",&motSaisie);
            char resultat[100] = {0};
            resultat[100] = pareil(motSaisie,motMystere[100]);
            printf("%d",resultat[1]);
        return 0;
    }
    
    char pareil[100](char lettre,char motMystere[100])
    {
    char etoile = "*" ;
    char resultat;
    
       while(motMystere[i]!= "\n")
       {
    
            if(lettre == motMystere[i])
            {
                resultat[i] = lettre ;
            }
    
            else
            {
                resultat[i] = etoile ;
            }
    
       }
     return resultat;
    }



      merci

    -
    Edité par GabinJobert 16 août 2017 à 19:35:53

    • Partager sur Facebook
    • Partager sur Twitter
      16 août 2017 à 19:40:31

      Hello,

      Les 2 erreurs:

      • pareil[100](....) → pareil(....)
      • char etoile="*"→ char etoile='*'
      • qui plus est: reslutat est un char, par un char *, donc pas possible d'avoir resultat[i]

      -
      Edité par edgarjacobs 16 août 2017 à 19:41:57

      • Partager sur Facebook
      • Partager sur Twitter

      On écrit "j'ai tort", pas "tord" qui est le verbe "tordre" à la 3ème personne de l'indicatif présent

        16 août 2017 à 19:52:14

        alors en fait quand j'apporte les modification mais cela me rajoute des erreurs :

        .c:24: error: conflicting types for 'pareil'l (je pourrais regler ca en changeant le type de resultat ligne 18 mais je ne pourrais plus stocker des chaines non ?

        c:4: error: previous declaration of 'pareil' was here

        c:24: error: conflicting types for 'pareil'

        c:4  error: previous declaration of 'pareil' was here

        .c:28: error: `i' undeclared (first use in this function)

        .c:28: error: (Each undeclared identifier is reported only once

        :28: error: for each function it appears in.)

        je me retrouve donc avec encore plus d'erreur qu'avant

        -
        Edité par GabinJobert 16 août 2017 à 21:53:43

        • Partager sur Facebook
        • Partager sur Twitter
          16 août 2017 à 22:22:46

          Re,-

          Tu dois également modifier le prototype de pareil(....) à la ligne 4. Et déclarer i en ligne 24 bis.

          Mais tu ferais bien de revenir en arrière dans le tutoriel: une fonction ne peut pas renvoyer un tableau (ligne 42). Il va donc falloir que tu trouves une autre solution (je te rassurre, elle existe).

          -
          Edité par edgarjacobs 16 août 2017 à 22:24:26

          • Partager sur Facebook
          • Partager sur Twitter

          On écrit "j'ai tort", pas "tord" qui est le verbe "tordre" à la 3ème personne de l'indicatif présent

          erreur TP du pendu

          × 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