Caracteres

Bonjour, a tous quelqu'un aura une solution pour ce code :

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

int main(int argc, char *argv[])
{
char MotDePasse [100];

while(MotDePasse != "john")
{
printf("Entrez le mot de pass ? ");
scanf("%s", MotDePasse);
}

else
{
printf("Salut john, je suis heureux de te revoire !\n\n");
}
return 0;
}

aidez moi svp

2 réponses

  1. jai trouvé moi meme la solution :

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

    int main(int argc, char *argv[])
    {
    char chaine1[] = "john", chaine2[100];

    while (strcmp(chaine1, chaine2) != 0)
    {
    printf("tapez le mot de passe ");
    scanf("%s",chaine2);

    }
    while (strcmp(chaine1, chaine2) == 0)
    {
    printf("\nBIENVENU A VOTRE ORDINATEUR \n");
    break;}
    return 0;
    }

    merci comeme
    0
    1. Contributeur
      Re
      Bin tu vois :o)
      Par contre je ne vois pas l'utilité d'un second while.
      Si l'utilisateur est sorti de la première boucle, c'est qu'il a tapé le bon mot de passe. Pas besoin de revérifier ensuite.
      Donc un simple
      printf("\nBIENVENU A VOTRE ORDINATEUR \n"); 
      suffit sans le while autour.

      En plus, même si tu voulais vraiment revérifier l'input, un if serait beaucoup plus indiqué qu'un while ;o)
      0
  2. Contributeur
    Hello,
    déjà tu as un "else" sans "if"... C'est une première chose. Corrige déjà ça puis reposte ton code :o)
    0