Partage
  • Partager sur Facebook
  • Partager sur Twitter

Tableau ex1

    17 juin 2006 à 11:45:01

    Bonjour,

    Je suis comme vous l'aurez devine au chapitre des tableaux dont j'ai un problème au premier exercice.

    Citation : Code C

    #include <stdio.h>
    #include <stdlib.h>

    long sommeTableau(long tableau[], long tailleTableau);

    int main() {

    long tableau[4] = {1, 2, 3, 4};
    sommeTableau(tableau, tableau[4]);
    printf("Somme du tableau : %ld\n\n", sommeTableau);

    }

    long sommeTableau(long tableau[], long tailleTableau) {

    long i = 0, resultat = 0;

    for (i=0;i<tailleTableau;i++) {

    resultat += tableau[i];

    }

    return resultat;

    }



    Le resultat me donne une adresse au lieu d'une valeure.
    Je comprend plus rien...

    Merci
    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      17 juin 2006 à 11:59:34

      Il faut que tu récupères la valeur de retour de ta fonction sommeTableau pour afficher ce qu'elle retourne, alors qu'ici tu veux afficher la fonction directement, sans paramètres (en fait, son nom correspond à l'adresse de la fonction). Au passage, il faut passer en paramètre la taille du tableau, pas une de ses valeurs. Voici deux possibilités (un peu réindentées), la première avec variable intermédiaire et passage en dur de taille :
      int
      main(void)
      {
              long tableau[4] = {1, 2, 3, 4};
              long somme;

              somme = sommeTableau(tableau, 4);
              printf("Somme du tableau : %ld\n\n", somme);
              return (0);
      }

      La deuxième plus courte, avec calcul de la taille :
      int
      main(void)
      {
              long tableau[4] = {1, 2, 3, 4};
              printf("Somme du tableau : %ld\n\n", sommeTableau(tableau, sizeof tableau / sizeof *tableau);
              return (0);
      }
      • Partager sur Facebook
      • Partager sur Twitter
        17 juin 2006 à 14:04:05

        merci pour ta réponse je comprend un peu mieux.
        • Partager sur Facebook
        • Partager sur Twitter

        Tableau ex1

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown