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 :

Affichage contenu d'un tableau


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 25
    Par défaut Affichage contenu d'un tableau
    salut a tous.
    alors voila mon souci,en faisant un exercice du tutoriel du site open class room sur les tableaux,je dois faire une copie d'un tableaux dans un autre mais le souci c'est que je n'arrive pas a afficher les valeurs des deux tableaux ,a la place ca m'affiche les deux adresse ,je suppose que ca doit etre une erreur de ma part:

    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
    26
     
    #include <stdio.h>
    #include <stdlib.h>
     
    void copie(int tableau1[], int tableau2[], int tailletableau)
    {
        int i = 0;
        for (i = 0; i< 5; i++)
            tableau2[i] = tableau1[i];
     
            printf("%d :\n", tableau1);
     
    }
     
    int main(void)
    {
        int tableau[5] = {10,20,30,40,50};
        int tableau2[5] = {0};
     
     
        copie(tableau, tableau2, 5);
     
     
        getchar();
        return 0;
    }
    ou c'est peut etre que j'ai mal comprit le fonctionnement d'un tableau.
    merci a tous

  2. #2
    Membre Expert

    Homme Profil pro
    Responsable des études
    Inscrit en
    Mars 2009
    Messages
    553
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Responsable des études
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2009
    Messages : 553
    Par défaut
    Effectivement, pour afficher le contenu du tableau avec printf, il faudra afficher tous les éléments un par un.

  3. #3
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 853
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 853
    Billets dans le blog
    1
    Par défaut
    Et sinon pas la peine d'avoir une variable "tailletableau" si tu écris ensuite ta boucle de 0 à 5 en dur...
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 25
    Par défaut
    merci a tous:

    mais ce que je ne comprend pas c'est que par exemple sur mon code suivant je peux afficher tout le tableaux avec un seul printf:

    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
     
    #include <stdio.h>
    #include <stdlib.h>
     
    int affiche(int tableau[], int tailletableau) // on peut utiliser *tableau pour indiquer que l'on attend un tableau //
    {
    	int i =0;
    	for(i = 0; i < tailletableau; i++)
    		printf("%d\n", tableau[i]); // ne pas oublier le "i" pour specifier que l'on veut afficher toute les cases //
    }
     
     
    int main(void)
    {
    	int tableau[5] = {10,20,30};
     
    	affiche(tableau, 5);
     
    	getchar();
    	return 0;
    donc dans mon autre code,faut'il deux for dans ma fonction pour voir si ma copie de tableau a bien fonctionner?
    merci

  5. #5
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 853
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 853
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par wil31 Voir le message
    mais ce que je ne comprend pas c'est que par exemple sur mon code suivant je peux afficher tout le tableaux avec un seul printf:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    	for(i = 0; i < tailletableau; i++)
    		printf("%d\n", tableau[i]); // ne pas oublier le "i" pour specifier que l'on veut afficher toute les cases //
    Ben la différence avec l'autre code, c'est que
    • ton printf est dans la boucle alors que dans l'autre il ne l'était pas
    • ton printf affiche l'élément [i] du tableau alors que dans l'autre il affichait le tableau lui-même (si tu ne vois pas la différence entre printf("%d\n", tableau[i]) et printf("%d\n", tableau) on ne peut rien pour toi !!!)
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 25
    Par défaut
    merci de ta reponse,du coup j'y suit arriver,je sais pas si c'est la meilleur maniere:

    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
    26
    27
    28
    29
    30
    31
     
    #include <stdio.h>
    #include <stdlib.h>
     
    void copie(int tableau1[], int tableau2[], int tailletableau)
    {
        int i = 0;
        for (i = 0; i< 5; i++)
            tableau2[i] = tableau1[i];
     
    }
     
    int main(void)
    {
        int tableau[5] = {10,20,30,40,50};
        int tableau2[5] = {0};
        int i =0;
     
     
        copie(tableau, tableau2, 5);
        for (i = 0;i < 5; i++)
            printf("\n tab 2: %d \n\n", tableau2[i]);
        for (i = 0;i < 5; i++)
        {
            printf("\n tab 1: %d\n", tableau[i]);
        }
     
     
        getchar();
        return 0;
    }
    merci a tous

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

Discussions similaires

  1. [CR8.5] Probleme de tableau
    Par Sto59 dans le forum SAP Crystal Reports
    Réponses: 2
    Dernier message: 21/02/2007, 15h07
  2. Probleme de tableau paramétrable
    Par jamah dans le forum Composants VCL
    Réponses: 4
    Dernier message: 29/11/2005, 12h47
  3. jolie probleme de tableau
    Par racoon971 dans le forum C++
    Réponses: 2
    Dernier message: 04/03/2005, 11h31
  4. probleme de tableau dynamique
    Par El Krotal dans le forum C
    Réponses: 9
    Dernier message: 25/06/2004, 17h00
  5. [C#] Probleme de tableau
    Par djsbens dans le forum Windows Forms
    Réponses: 8
    Dernier message: 08/06/2004, 14h04

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