IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

besoin d'aide avec un code assez bizarre !


Sujet :

C

  1. #1
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2005
    Messages
    163
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2005
    Messages : 163
    Points : 102
    Points
    102
    Par défaut besoin d'aide avec un code assez bizarre !
    slt tout le monde !
    j'ai un petit problème avec un code pourtant assez simple
    la partie qui pose pb est celle là
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    while(saisir_encore==true)
    	{
    		printf(" nom du pays :\n");
    		scanf(" %s ",&str_p[compteur].p_nom_pays);
    		printf(" continent :\n");
    		scanf("%s",&str_p[compteur].p_continent);
    		printf(" nombre de sa population :\n");
    		scanf("%s" ,&str_p[compteur].p_nb_population);
    		cin>>str_p[compteur].p_nb_population;
    		printf(" voulez vous ajouter un pays ? 0/non 1/oui ");
    		scanf("%d",&rep);
    		if(rep==1)
    			compteur++;
    		else if(rep==0) 
    		       saisir_encore = false;
    }
    à l'execution ça me fait :
    donnez le nom du pays : france par exemple
    ensuite rien , je dois entrer un caractère pour avoir:
    continent:
    nbre population:
    voila mes structures :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
    typedef struct 
    {
    	unsigned int d_jour;
    	unsigned int d_mois;
    	unsigned int d_annee;
     
    }Date;
     
    typedef struct 
    {
    	char *p_nom_pays;
    	Date p_date[189];
    	char *p_continent;
    	unsigned int p_nb_population;
    	char  *p_langues_officielles[10];
    	float p_taux_analphabete;
    	float p_pbn;
    	float p_pourcentage_universitaires;
    	unsigned int nbre_langues;
    	unsigned int id;
     
    }Pays;
    une idée ?
    merci !
    http://amokrane-chentir.blogspot.com { Software engineering, .NET technologies, Imagine cup..}

  2. #2
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut Re: besoin d'aide avec un code assez bizarre !
    Citation Envoyé par Amokrane
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    		scanf(" %s ",&str_p[compteur].p_nom_pays);
    		scanf("%s",&str_p[compteur].p_continent);
    		scanf("%s" ,&str_p[compteur].p_nb_population);
    		scanf("%d",&rep);
    à l'execution ça me fait :
    donnez le nom du pays : france par exemple
    ensuite rien , je dois entrer un caractère pour avoir:
    continent:
    nbre population:

    une idée ?
    Oui, Ne pas utiliser scanf() si on ne maîtrise pas cette fonction très difficile à utiliser correctement.

    http://emmanuel-delahaye.developpez....tes.htm#saisie
    Pas de Wi-Fi à la maison : CPL

  3. #3
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2005
    Messages
    163
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2005
    Messages : 163
    Points : 102
    Points
    102
    Par défaut
    ben j'ai essayé le truc avec cin , mais tjs le même pb !

    PS : je vais lire ,la page mnt
    http://amokrane-chentir.blogspot.com { Software engineering, .NET technologies, Imagine cup..}

  4. #4
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut
    Citation Envoyé par Amokrane
    ben j'ai essayé le truc avec cin
    Pas du C.
    Pas de Wi-Fi à la maison : CPL

  5. #5
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2005
    Messages
    163
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2005
    Messages : 163
    Points : 102
    Points
    102
    Par défaut
    lol ça serait bête , de poster le même topic dans la partie C++ non ?
    une solution pr mon pb sinon ^^?

    Merci encore
    http://amokrane-chentir.blogspot.com { Software engineering, .NET technologies, Imagine cup..}

  6. #6
    Membre éprouvé
    Avatar de Pouic
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 669
    Points : 977
    Points
    977
    Par défaut
    Si tu tiens réellement à utiliser scanf, jette un oeil à ma signature. Mais au vu de l'utilisation que tu en as, je te conseille très fortement d'utiliser fgets, comme te l'a déjà signalé Emmanuel.
    Software becomes slower faster than hardware becomes faster
    [size=1]
    http://xrenault.developpez.com

  7. #7
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2005
    Messages
    163
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2005
    Messages : 163
    Points : 102
    Points
    102
    Par défaut
    Software becomes lower faster than hardware becomes faster
    à méditer
    merci en tout cas!
    j'essaye la version fgets !
    http://amokrane-chentir.blogspot.com { Software engineering, .NET technologies, Imagine cup..}

  8. #8
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2005
    Messages
    163
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2005
    Messages : 163
    Points : 102
    Points
    102
    Par défaut
    au passage , j'ai trouvé l'origine du pb qui est tt bête ( comme je me l'imaginais !) , une erreur de débutant scanf("%s",&machin); et non scanf(" %s ",&machin); fallait faire attention aux éspaces ...
    http://amokrane-chentir.blogspot.com { Software engineering, .NET technologies, Imagine cup..}

  9. #9
    Membre éprouvé
    Avatar de Pouic
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    669
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 669
    Points : 977
    Points
    977
    Par défaut
    Citation Envoyé par Amokrane
    au passage , j'ai trouvé l'origine du pb qui est tt bête ( comme je me l'imaginais !) , une erreur de débutant scanf("%s",&machin); et non scanf(" %s ",&machin); fallait faire attention aux éspaces ...
    Ben oui... Et plus précisemment, c'est l'espace situé _après_ le formateur qui posait problème. La chaîne de formatage de scanf est loin d'être évidente à manipuler... (sans parler que tu ne purge pas le flux entrant, tout ça tout ça... )

    J'espère que tu as fait la version avec fgets finalement
    Software becomes slower faster than hardware becomes faster
    [size=1]
    http://xrenault.developpez.com

  10. #10
    Expert éminent sénior
    Avatar de Skyounet
    Homme Profil pro
    Software Engineer
    Inscrit en
    Mars 2005
    Messages
    6 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Software Engineer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Points : 13 380
    Points
    13 380
    Par défaut
    Citation Envoyé par Amokrane
    Software becomes lower faster than hardware becomes faster
    à méditer
    merci en tout cas!
    j'essaye la version fgets !
    Quand Pouic a dit de regarder sa signature il faisait plutot allusion a ca
    Tutoriel sur l'utilisation de scanf

    Introduction à Silverlight 4 (new) ; Localisation d'une application Silverlight (new) ;
    Mon espace perso[/B]

    La connaissance s’acquiert par l’expérience, tout le reste n’est que de l’information. Albert Einstein[/SIZE]

  11. #11
    Membre régulier
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2005
    Messages
    163
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2005
    Messages : 163
    Points : 102
    Points
    102
    Par défaut
    Citation Envoyé par Skyrunner
    Citation Envoyé par Amokrane
    Software becomes lower faster than hardware becomes faster
    à méditer
    merci en tout cas!
    j'essaye la version fgets !
    Quand Pouic a dit de regarder sa signature il faisait plutot allusion a ca
    Tutoriel sur l'utilisation de scanf

    manque un smiley , ridicule sur le forum !
    je sors , j'éspère que ça t'a fait marrer qd même ^^

    @Pouic : finalement j'ai tout réecrit en C++ , vu que je faisais la manipulation de fichier avec les objets des classes ofstream et ifstream...
    http://amokrane-chentir.blogspot.com { Software engineering, .NET technologies, Imagine cup..}

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Besoin d'aide avec Regexp::Assemble
    Par mobscene dans le forum Modules
    Réponses: 5
    Dernier message: 11/04/2007, 12h39
  2. [ASA] J'ai besoin d'aide avec sybase et vb6 svp !!
    Par tibo830 dans le forum SQL Anywhere
    Réponses: 7
    Dernier message: 12/05/2006, 10h09
  3. Besoin d'aide avec TinyXML
    Par Clad3 dans le forum Bibliothèques
    Réponses: 5
    Dernier message: 15/08/2005, 18h20
  4. Réponses: 2
    Dernier message: 29/08/2003, 17h52
  5. Besoin d'aide avec postgresql sous windows NT
    Par Chihuahua dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 18/07/2003, 08h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo