C - egalité entre deux tableau

Résolu/Fermé
woshi - Modifié par woshi le 10/09/2011 à 13:42
 woshi - 10 sept. 2011 à 13:56
Bonjour,

Je programme un pendu en C.

Quand j'ai trouvé le mot secret, je veux faire exit(0) if(motSecret[] == motTrouve[]), mais ça ne marche pas.
Comment faire un un if égale avec des chaines de caractères ?

voici mon code :



char lireCaractere(); 

int main() 
{ 

    char motSecret[] = "ROUGE"; 
    char motTrouve[] = "*****"; 
    char maLettre = 0; 
    int c = 10; 

    while(c != 0)   { 

    printf("\nIl vous reste %d coups à jouer\n", c); 
    printf("Tapez une lettre :\n"); 

    maLettre = lireCaractere(); 
    int i=0; 
    c--; 

        for (i = 0; i< 6; i++)  { 

            if (motSecret[i] == maLettre)  { 

            motTrouve[i] = maLettre; 
            c++; 
            } 

        } 

        printf("%s", motTrouve); 

        if (motSecret[] == motTrouve[]) { 

        printf("Bravo ! Vous avez gagne !"); 
        exit(0); 

        } 

        if (c == 0) { 

        printf("Vous avez perdu !"); 
        } 





    } 
} 

char lireCaractere()    { 

    char caractere = 0; 
    caractere = getchar(); // On lit le premier caractère 
    caractere = toupper(caractere); // On met la lettre en majuscule si elle ne l'est pas déjà 


    while(getchar() != '\n'); 

    return caractere; 

} 


Merci d'avance pour votre aide :)



A voir également:

3 réponses

carbon6 Messages postés 45 Date d'inscription vendredi 22 juillet 2011 Statut Membre Dernière intervention 9 juillet 2013 41
10 sept. 2011 à 13:46
Bonjour, regarde la fonction strcmp dans string.h.
Tu peux aussi faire une comparaison lettre à lettre dans une boucle.
0
nicocorico Messages postés 799 Date d'inscription dimanche 19 juin 2011 Statut Membre Dernière intervention 3 juillet 2018 138
10 sept. 2011 à 13:48
Il faut que tu compares la taille et chaque caractère contenu dans les deux mots...
0
Ca marche impec' avec strcmp !


Merci pour vos réponses =)
0