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 :

Saisie d'un tableau et affichage du cotenu


Sujet :

C

  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Décembre 2005
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 3
    Points : 1
    Points
    1
    Par défaut Saisie d'un tableau et affichage du contenu
    salut tout le monde
    je n'arrive pas à deceler le probleme au niveau de mon code je vous prie bien bien vouloir m'aider voici l'ennoce:"sasie d'un tableau et affichage du cotenu"


    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
    24
    25
    #include<stdio.h>
    void saisiestat(double tb[], int a);
    main()
    {
    	int x;
    	int i;
    	double tableau[100];
    	printf("donnez le nombre de valeurs en question\n");
    	scanf("%d",&x);
    	saisiestat(tableau,x);
    	for(i=0;i<x;i++)
    	{
    		printf("%f\n",tableau[i]);
    	}
    	return 0;
    }
     
    void saisiestat(double tb[], int a)
    {
    	int i;
    	for (i=0;i<a;i++)
    	{
    		scanf("%f",&tb[i]);
    	}
    }

  2. #2
    Expert éminent sénior

    Avatar de fearyourself
    Homme Profil pro
    Ingénieur Informaticien Senior
    Inscrit en
    Décembre 2005
    Messages
    5 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Ingénieur Informaticien Senior
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2005
    Messages : 5 121
    Points : 11 877
    Points
    11 877
    Par défaut
    Quelques remarques sur ton code:
    C'est mieux qu'un void main() mais mets explicitement

    Ensuite l'utilisation de scanf est déconseillé, il faut utilisé fgets ou getchar... Regarde la FAQ de ce forum...

    Pour ce qui est de ton erreur, elle se trouve ici:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    scanf("%f",&tb[i]);
    En effet, tu dis à scanf que tu veux un flottant or tu veux en fait un double... le "%f" est donc faux... Un exemple de pourquoi il ne faut plus utiliser scanf...

    Jc

  3. #3
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Points : 12 462
    Points
    12 462
    Par défaut
    Citation Envoyé par fearyourself
    C'est mieux qu'un void main() mais mets explicitement

    Je dirais même mieux, si tu n'utilise pas les arguments en ligne de commande, tu peut ajouter void à la place des arguments de main

    En C il est toujours préférable de préciser les arguments, même s'il s'agit d'un void !
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

  4. #4
    Nouveau Candidat au Club
    Inscrit en
    Décembre 2005
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 3
    Points : 1
    Points
    1
    Par défaut reponse
    on peut utiliser %f pour un double comme pour un float
    %lf ----> double
    %e ---->double

  5. #5
    Nouveau Candidat au Club
    Inscrit en
    Décembre 2005
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 3
    Points : 1
    Points
    1
    Par défaut reponse
    salut
    mon probleme se localise dans l'affichage ou bien le remplissage du contenu du tableau???
    merci

  6. #6
    Expert éminent sénior

    Avatar de fearyourself
    Homme Profil pro
    Ingénieur Informaticien Senior
    Inscrit en
    Décembre 2005
    Messages
    5 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Ingénieur Informaticien Senior
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2005
    Messages : 5 121
    Points : 11 877
    Points
    11 877
    Par défaut
    on peut utiliser %f pour un double comme pour un float
    Vrai pour printf, pas pour scanf...

    EDITION: le coup du vrai pour le printf ne doit pas être standard par contre

    mon probleme se localise dans l'affichage ou bien le remplissage du contenu du tableau???
    Ma phrase précédente répond à cette question

    Mais si tu veux faire du C sérieusement, oublie la fonction scanf

  7. #7
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Points : 12 462
    Points
    12 462
    Par défaut Re: reponse
    Citation Envoyé par ahous9
    on peut utiliser %f pour un double comme pour un float
    %lf ----> double
    %e ---->double
    le pour obtenir un double et Le si tu veut un long double ! Le 'e' tout seul te donne rien de plus qu'un float !
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

  8. #8
    Membre régulier Avatar de elghadi_mohamed
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2005
    Messages
    227
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Décembre 2005
    Messages : 227
    Points : 89
    Points
    89
    Par défaut
    tu lui demane d'oublier scanf
    qu'est ce que tu lui propose à la place
    merci
    Soit A un succès dans la vie. Alors A = x + y + z, où x = travailler, y = s'amuser, z = se taire.

  9. #9
    Membre habitué Avatar de Marco85
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    210
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 210
    Points : 187
    Points
    187
    Par défaut
    Citation Envoyé par elghadi_mohamed
    tu lui demane d'oublier scanf
    qu'est ce que tu lui propose à la place
    merci
    Salut elghadi_mohamed,

    Lis la FAQ avant de poster :
    http://c.developpez.com/faq/c/?page=...EN_scanf_fgets

    Marco85
    If you cannot explain a concept to a six year-old, then you do not fully understand it. [Albert Einstein]

  10. #10
    Rédacteur/Modérateur
    Avatar de Trap D
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    4 942
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 4 942
    Points : 6 498
    Points
    6 498
    Par défaut
    Pour la saisie de flotaant/double, il faut utiliser conjointement
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    fgets(buf, sizeof(buf), stdi);
    val_double = strtod(buf, NULL);
    "La haine seule fait des choix" - Koan Zen
    "Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
    "Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
    Faites du Prolog, ça vous changera les idées !
    Ma page Prolog
    Mes codes sources commentés

    Mon avatar : La Madeleine à la veilleuse de Georges de La Tour

Discussions similaires

  1. Java:Affichage des informations saisie dans un tableau
    Par oyarson dans le forum Collection et Stream
    Réponses: 1
    Dernier message: 16/11/2010, 11h55
  2. Saisie d'un code + bouton + affichage formulaire
    Par youpitralala dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 02/07/2007, 14h40
  3. [AJAX] creation d'un tableau d'affichage des données
    Par highman dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 20/04/2007, 16h30
  4. [SQL] Affichage résultat requête dans un tableau, bouton affichage page
    Par megapacman dans le forum PHP & Base de données
    Réponses: 35
    Dernier message: 18/05/2006, 16h42
  5. tableau et affichage
    Par maminova77 dans le forum C++
    Réponses: 7
    Dernier message: 25/04/2006, 02h55

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