Gérer une reponse en C
metnet
-
JavaMafia.com -
JavaMafia.com -
Bonjour,
j'aiemarai gérér une réponse pour traiter des ajouts je fais un programme pour demander à l'utilisateur de donner une reponse si il veut ajouter un titre de film.
Si il dit Oui on fait le traitement puis on lui demande encore si c'est Non on quitte le programme et si il tape autre chose je veux qu'il revient au début pour qu'il saisit sa réponse ce que j'arrive pas à faire.
voici le code
#include<stdio.h>
int main()
{char rep;
do
{
printf("Voulez vous ajouter un film ? \n");
printf("Appuyez sur O pour Oui ou N pour Non\n");
scanf("%s",&rep);
if((rep=='O')||(rep=='o'))
printf("On fait le traitement\n");
else
if((rep=='N')||(rep=='n'))
printf("Merçi et Au revoir\n");
else
printf("Erreur Vueillez appuyez sur la touche O ou N\n");
}while((rep=='O')||(rep=='o'));
getchar();
getchar();
}
j'aiemarai gérér une réponse pour traiter des ajouts je fais un programme pour demander à l'utilisateur de donner une reponse si il veut ajouter un titre de film.
Si il dit Oui on fait le traitement puis on lui demande encore si c'est Non on quitte le programme et si il tape autre chose je veux qu'il revient au début pour qu'il saisit sa réponse ce que j'arrive pas à faire.
voici le code
#include<stdio.h>
int main()
{char rep;
do
{
printf("Voulez vous ajouter un film ? \n");
printf("Appuyez sur O pour Oui ou N pour Non\n");
scanf("%s",&rep);
if((rep=='O')||(rep=='o'))
printf("On fait le traitement\n");
else
if((rep=='N')||(rep=='n'))
printf("Merçi et Au revoir\n");
else
printf("Erreur Vueillez appuyez sur la touche O ou N\n");
}while((rep=='O')||(rep=='o'));
getchar();
getchar();
}
A voir également:
- Gérer une reponse en C
- Réponse automatique thunderbird - Guide
- Réponse automatique gmail - Guide
- Gerer stockage google - Guide
- Comment gérer les applications qui se lancent au démarrage - Guide
- Gerer les profils netflix - Guide
1 réponse
Bonjour, ton code est correcte il te manque que quelques instruction:
#include<stdio.h>
int main()
{
char rep;
printf("Voulez vous ajouter un film ? \n");
printf("Appuyez sur O pour Oui ou N pour Non\n");
do
{
scanf("%s",&rep);
if((rep=='O')||(rep=='o'))
{
printf("On fait le traitement\n");
break;
}
else
{
if((rep=='N')||(rep=='n'))
{
printf("Merçi et Au revoir\n");
break;
}
else
printf("Erreur Vueillez appuyez sur la touche O ou N\n");
}
}
while((rep!='O')||(rep!='o'));
getchar();
getchar();
}
Bonne chance et merci de cliquer sur Résolu :)
#include<stdio.h>
int main()
{
char rep;
printf("Voulez vous ajouter un film ? \n");
printf("Appuyez sur O pour Oui ou N pour Non\n");
do
{
scanf("%s",&rep);
if((rep=='O')||(rep=='o'))
{
printf("On fait le traitement\n");
break;
}
else
{
if((rep=='N')||(rep=='n'))
{
printf("Merçi et Au revoir\n");
break;
}
else
printf("Erreur Vueillez appuyez sur la touche O ou N\n");
}
}
while((rep!='O')||(rep!='o'));
getchar();
getchar();
}
Bonne chance et merci de cliquer sur Résolu :)
char rep;
scanf("%s",&rep);
Ces types sont incompatibles. Dans son cas, il faut utiliser rep=getchar(); ou scanf("%c",&rep);
Et, ne pas oublier de vider le '\n' restant dans le buffer clavier par un simple getchar();
Ce qui donnerait :
Sinon, tu peux faire beaucoup plus propre en utilisant l'instruction switch. Et pas besoin de vérifier majuscule ou minuscule. Tu peux simplement convertir rep en majuscule via toupper() et vérifier ce caractère uniquement.
Je te conseille également de faire des if, else if plutôt que des if, if. Ca sera plus performant. Et enfin, évite l'utilisation des "break" autant que possible.
Cdlt,
en fait j'avais poser la question sur le forum et j'avais des reponses du coup j'ai mis résolu le programme marche bien mais il se trouve qu'il ne fait pas un chose à savoir si l'utilisateur tape sur Oui on fait le traitement puis on lui redemande encore si il veut continuer ce que ne fait pas le programme dés qu'il demande une premiére fois il fait son traitement et s'arrete
int main(void)
{
char rep;
printf("Voulez vous ajouter un film ? Appuyez sur O pour Oui ou N pour Non\n");
printf("\n");
do
{
rep=getchar();
getchar();
if((rep=='O')||(rep=='o'))
{
printf("On fait le traitement\n");
break;
}
else if((rep=='N')||(rep=='n'))
{ printf("Merçi d'Appuyer sur une touche pour Quitter\n");
break;
}
else
printf("Erreur Vueillez Appuyez sur O pour Oui ou N pour Non \n");
} while((rep!='O')||(rep!='o'));
getchar();
return 0;
}
Configuration: Windows Vista / Safari 53