Petit probleme pour un mot en c...
Code
-
fiddy Messages postés 11069 Date d'inscription Statut Contributeur Dernière intervention -
fiddy Messages postés 11069 Date d'inscription Statut Contributeur Dernière intervention -
Bonjours j'aimerais savoir comment mettre une phrase a la place d'une seul lettre je vous montre mon script pour que se soit plus claire
donc a la place de "tonmdp" j'aimerais mettre un mot mais ca ne marche pas cra "%c" ne prend qu'un seul caractère merci de repondre vite ;)
int main() { int mdp; int mdpentrer; mdp = ('tonmdp'); printf("entrez le mot de passe:\n"); scanf("%c", &mdpentrer ); printf("\n"); if(mdpentrer == mdp) { printf("mot de passe correct\n"); }
donc a la place de "tonmdp" j'aimerais mettre un mot mais ca ne marche pas cra "%c" ne prend qu'un seul caractère merci de repondre vite ;)
A voir également:
- Petit probleme pour un mot en c...
- Trousseau mot de passe iphone - Guide
- Mot de passe - Guide
- Mot de passe administrateur - Guide
- Mot de passe bios perdu - Guide
- Mettre un mot de passe sur un dossier - Guide
1 réponse
Bonjour,
mdp = ('tonmdp');
Tu peux pas. mdp est un entier...
Si tu veux que mdp soit une chaîne de caractères, il faut mettre :
Et pour stocker le contenu de mdp :
A noter que tu peux mettre directement :
scanf("%c", &mdpentrer );
De même, mdpentrer est un int. Donc plutôt :
Puis à la place du scanf() :
if(mdpentrer == mdp)
Comparaison de strings, il faut donc utiliser plutôt strcmp().
Ce qui donne :
Note : je te conseille la (re)lecture d'un tuto pour approfondir les bases. Exemple : https://openclassrooms.com/fr/courses/19980-apprenez-a-programmer-en-c
Cdlt,
mdp = ('tonmdp');
Tu peux pas. mdp est un entier...
Si tu veux que mdp soit une chaîne de caractères, il faut mettre :
char mdp[25];
Et pour stocker le contenu de mdp :
strcpy(mdp, "tonmdp");
A noter que tu peux mettre directement :
char mdp[]="tonmdp";
scanf("%c", &mdpentrer );
De même, mdpentrer est un int. Donc plutôt :
char mdpentrer[25];
Puis à la place du scanf() :
scanf("%24s", mdpentrer);
if(mdpentrer == mdp)
Comparaison de strings, il faut donc utiliser plutôt strcmp().
Ce qui donne :
if (strcmp(mdpentrer, mdp) == 0) Dans ton code, il manque l'accolade finale. Et enfin il manque un <code c>return 0;en fin du main().
Note : je te conseille la (re)lecture d'un tuto pour approfondir les bases. Exemple : https://openclassrooms.com/fr/courses/19980-apprenez-a-programmer-en-c
Cdlt,