Problème de lecture de caractère en C
Yakurena
-
Jolkdarr -
Jolkdarr -
Rebonjour,
j'ai encore un problème :
si je fais une première lecture de variable(une chaine de caractères) et que je veux lire ensuite un caractère,le programme continue à s'éxécuter après la première lecture sans me laisser entrer le caractère au clavier.
Cad ,avec le programme suivant:
printf("entrez une chaine : ");
scanf("%s",chaine);
printf("entrez un caractère : ");
scanf("%c",&caractere);
printf("fin du programme");
En execution,cela donne:
entrez une chaine : toto (tapé au clavier)
entrez un caractère : fin du programme
Quel est le problème et comment le résoudre?
Merci d'avance.
j'ai encore un problème :
si je fais une première lecture de variable(une chaine de caractères) et que je veux lire ensuite un caractère,le programme continue à s'éxécuter après la première lecture sans me laisser entrer le caractère au clavier.
Cad ,avec le programme suivant:
printf("entrez une chaine : ");
scanf("%s",chaine);
printf("entrez un caractère : ");
scanf("%c",&caractere);
printf("fin du programme");
En execution,cela donne:
entrez une chaine : toto (tapé au clavier)
entrez un caractère : fin du programme
Quel est le problème et comment le résoudre?
Merci d'avance.
A voir également:
- Problème de lecture de caractère en C
- Caractère ascii - Guide
- Caractère spéciaux - Guide
- Caractere speciaux - Guide
- Télécharger livre de lecture ce2 gratuit pdf - Télécharger - Éducatifs
- Confirmation de lecture whatsapp - Guide
3 réponses
Hello !
Si tu veux comprendre ce qui se passe, compare avec le programme ci-dessous :
ou
Take care !
Si tu veux comprendre ce qui se passe, compare avec le programme ci-dessous :
#include <stdio.h> int main() { char Chaine[50]; char Caractere; printf("entrez une chaine : "); scanf("%s",Chaine); printf("entrez un caractère : "); scanf("\n%c",&Caractere); printf("fin du programme %c", Caractere); }
ou
scanf(" %c",&Caractere);
Take care !
salut,
ca me rappelle mes debut en C
tiens , tu fais en avant d'excuter ton bout de code de lecture de chaines un
cela te permet de liberer le tampon
je pense que ca devra aller.
Courage a toi
@+
ca me rappelle mes debut en C
tiens , tu fais en avant d'excuter ton bout de code de lecture de chaines un
flush();ou
flushall();<
cela te permet de liberer le tampon
je pense que ca devra aller.
Courage a toi
@+
Salut,
essaye ca:
Pour afficher les résultat sur la sortie standard:
c=getchar(); ------> putchar(c)
gets(str);------> puts(str)
essaye ca:
char c; char str[50]; fflush(stdout); printf("entrez une chaine puis valider par <entrée> : "); c=getchar(); fflush(stdout); printf("entrez un caractère : "); gets(str); printf("fin du programme");
Pour afficher les résultat sur la sortie standard:
c=getchar(); ------> putchar(c)
gets(str);------> puts(str)