Enregistrement d'une chaine de caractere en C

Fermé
Matthieu - 28 mars 2005 à 10:55
 S@IT - 28 mars 2005 à 15:22
Voila j'ai un probleme je dois faire un prgramme en C pour faire une gestion de joueur pour mon club de basket. En fait à un moment je dois enregistrer l'adresse et il y a des espaces (du type "16 rue de la Motte"et sa me fait une erreur quan je fai entrer voila mon code de saisi.

//Declaration dans une structure Joueur//
char adresse_joueur[20];


printf("Adresse du Joueur :");
scanf("%s",joueur.adresse_joueur);

Merci d'avance de m'aider sincerement un novice.

3 réponses

Mes tout ton code stp ...
0
Je peu pas il fai plus de 2000 lignes mais je peu te mettre la declaration entiere
typedef struct
{
int num_joueur;
char nom_joueur[20];
char prenom_joueur[20];
char sexe[2];
char adresse_joueur[20];
char cp_joueur[6];
char ville_joueur[20];
char tel_joueur[15];
char brule[2];
char type_licence[2];
int naissance_joueur;
char numlicence_joueur[30];
char paye_joueur[2];
char surclassement[2];
int num_equipe;
}joueurs;


void creer_joueur()
{
printf("Combien voulez vous saisir de joueur :");
scanf("%d",&nb_enreg);
c=0;
p_joueur=fopen("c:\\temp\\joueur.txt","w");
if(!p_joueur)
{
printf("ERREUR\n");
exit(-1);
}

while(c<nb_enreg)
{
printf("nom du Joueur :");
scanf("%s",joueur.nom_joueur);
printf("prenom du Joueur :");
scanf("%s",joueur.prenom_joueur);
do
{//verif de bon parametre m/f
printf("quel est le sexe du Joueur (M/F) :");
scanf("%s",joueur.sexe);
resultat_verifparametre5=verif_parametre5();
if(resultat_verifparametre5!=1)
erreur_message(0);
}
while(resultat_verifparametre5!=1);
printf("Adresse du Joueur :");
scanf("%s",joueur.adresse_joueur);
printf("Code Postal du Joueur :");
scanf("%s",joueur.cp_joueur);
printf("Ville Joueur :");
scanf("%s",joueur.ville_joueur);
printf("Téléphone Joueur :");
scanf("%s",joueur.tel_joueur);
printf("Date Naissance joueur :");
scanf("%d",&joueur.naissance_joueur);
printf("Numeros de licence joueur");
scanf("%s",joueur.numlicence_joueur);
do
{//verif de bon parametre p/r/m
printf("Type de Licence Joueur R:renouvellement P:prêt M:mutation");
scanf("%s",joueur.type_licence);
resultat_verifparametre1=verif_parametre1();
if(resultat_verifparametre1!=1)
erreur_message(0);
}
while(resultat_verifparametre1!=1);
do
{//verif de bon parametre o/n
printf("Licence Payé (O/N) :");
scanf("%s",joueur.paye_joueur);
resultat_verifparametre4=verif_parametre4();
if(resultat_verifparametre4!=1)
erreur_message(0);
}
while(resultat_verifparametre4!=1);
do
{//verif de bon parametre o/n
printf("Joueur Brulé (O/N):");
scanf("%s",joueur.brule);
resultat_verifparametre2=verif_parametre2();
if(resultat_verifparametre2!=1)
erreur_message(0);
}
while(resultat_verifparametre2!=1);
do
{//verif de bon parametre o/n
printf("Joueur Surclasser ? (O/N) :");
scanf("%s",joueur.surclassement);
resultat_verifparametre3=verif_parametre3();
if(resultat_verifparametre3!=1)
erreur_message(0);
}
while((resultat_verifparametre3!=1));

do
{
resultat_verifnumequipe=0;
printf("Quel est le numéros de son equipe :");
affichage_equipe();
scanf("%d",&num_equipe);
resultat_verifnumequipe=verif_numequipe();
if(resultat_verifnumequipe!=1)
erreur_message(0);
}
while(resultat_verifnumequipe!=1);
joueur.num_equipe=num_equipe;
fwrite(&joueur,sizeof(joueurs),1,p_joueur);
printf("Joueur :%s Enregistrer. Joueur suivant\n\n",joueur.nom_joueur);
c++;
}
fclose(p_joueur);
}
0
T'a oublié, il faut passé l'adresse de la variable.

//Declaration dans une structure Joueur//
char adresse_joueur[20];


printf("Adresse du Joueur :");
scanf("%s",&joueur.adresse_joueur);
0