Retour d'un mauvais résultat pointeur tableau

dipouede Messages postés 157 Statut Membre -  
Char Snipeur Messages postés 10112 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour tout le monde, voila je débute en C et il m'arrive un petit problème :

int sommetableau( int tablo[], int tailletablo );

int main(int argc, char *argv[])
{
int tableau[5], i;
for (i=0 ; i<5 ; i++)
{
tableau[i]=1;
}
printf(" la somme du tableau de 5 nombres vaut : %d\n", sommetableau(tableau,5));
system("PAUSE");
return 0;
}

int sommetableau( int tablo[], int tailletablo )
{
int i, somme;
for (i=0 ; i<tailletablo ; i++);
{
somme = somme + tablo[i];
}
return somme;
}

comme vous pouvez le voir j'essaye de faire la somme des valeurs enregistrées dans le tableau,

et il me retourne ( si je comprends bien ) la somme des adresses des variables qui sont dans le tableau. j'ai beau mettre des "*" ou des "&" le problème reste le même.

pourriez vous m'expliquez comme changer cela?
d'avance je vous remercie

A voir également:

3 réponses

Char Snipeur Messages postés 10112 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
La seule erreur possible que je vois rapidement, c'est de mettre somme à 0
Et j'ai testé avec succès.
0
dipouede Messages postés 157 Statut Membre 1
 
Quand je met somme = 0 je me retrouve avec le même problème
0
Char Snipeur Messages postés 10112 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
int sommetableau( int tablo[], int tailletablo )
{
  int i, somme=0;
  for (i=0 ; i<tailletablo ; i++);
  {
    somme = somme + tablo[i];
  }
  return somme;
}
Fonctionne très bien chez moi.
quel est ton compilateur ?
essai, sans garantie, de modifier ta fonction en :
int sommetableau( int *tablo, int tailletablo )
Il y a normalement une conversion automatique de tableau vers pointeur.
0