Saisie d'une chaine de caractéres

adil_new Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -  
adil_new Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

je développe une petite application de gestion des clients d'une banque,donc j'ai créé la structure suivante:
struct Client
{
char nom[20];
char prenom[20];
char adresse[20];
int numCompte;
float solde;
};

parmi les traitement que je dois faire c'est la modification des champs nom, prenom et adresse. j'ai utilisé la fonction gets mais le programme ne me donne pas la main pour saisir le prenom( je saisie le nom et, il saute le prenom , et puis je saisie l'adresse.
voici le code :

switch(ch)
{

case 1:
printf("le numero du compte d'un client");
scanf("%d",&nCompteRech);
for(i=0;i<n;i++)
{
if(nCompteRech==T[i].numCompte)
{
// la modification du nom

printf("Le nom actuel est %s.\n Est ce que vous voulez le changer, tapez O si ou sinon tapez N\n",T[i].nom);
scanf("%c",&c);
scanf("%c",&c);
if(c=='O')
{
getchar();
printf("Entrez le nouveau nom :\n");
gets(T[i].nom);
getchar();
}
// la modification du prénom

printf("Le prénom actuel est %s.\n Est ce que vous voulez le changer, tapez O si ou sinon tapez N\n",T[i].prenom);
scanf("%c",&c);
//scanf("%c",&c);
if(c=='O')
{

// printf("Entrez le nouveau prénom:\n");

gets(T[i].prenom);

}

// la modification de l'adresse

printf("L'adresse actuelle est %s.\n Est ce que vous voulez la changer, tapez O si ou sinon tapez N\n",T[i].adresse);
scanf("%c",&c);
scanf("%c",&c);
if(c=='O')
{
getchar();
printf("Entrez la nouvelle adresse:\n");
gets(T[i].adresse);
}

}

j'attends votre aide svp c urgent
merci d'avance

A voir également:

2 réponses

chossette9 Messages postés 6855 Date d'inscription   Statut Contributeur Dernière intervention   1 312
 
Bonjour,

je ne suis pas un spécialiste, mais pour ton prénom, tu oublies un getchar(); juste avant le printf("Entrez le nouveau prénom:\n");

Cordialement.
0
adil_new Messages postés 2 Date d'inscription   Statut Membre Dernière intervention  
 
merciii pour ta réponse c quoi le rôle de getchar(); est ce que tu px m'expliquer ce qui ce passe exactement??
0