Somme tableau c

yaldoo -  
fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,


mon code ne m'affiche pas la somme

code c :


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


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

//------------------------------------------//


int main(int argc, char *argv[])
{ //debut du main

int tableau[4]={0,1,2,3};
int somme = sommeTableau(tableau, 4);
printf("la somme du tableau est : %d\n", somme);
} // fin du main


int sommeTableau(int *tableau, int tailleTableau)
{
int i=0;
int somme;
for(i ; i<tailleTableau ; i++){
somme += tableau[i];
}
return somme;
}
A voir également:

3 réponses

fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 846
 
Bonjour,
vous avez oublié dinitialiser la variable somme à 0.
Cdlt
0
jisisv Messages postés 3645 Date d'inscription   Statut Modérateur Dernière intervention   934
 
Hello,

int sommeTableau(int *tableau, int tailleTableau)
{
int i;
int somme=0;
for(i =0 ; i<tailleTableau ; i++){
somme += tableau[i];
}
return somme;
}

donnera déjà de meilleurs résultats....

Johan
0
yaldoo
 
oui ca marche.Faut-il absolument l'initialiser a 0 ?
Merci encore
0
fiddy Messages postés 11069 Date d'inscription   Statut Contributeur Dernière intervention   1 846
 
Par défaut, une variable (sauf cas particulier) n'est pas initialisée en C. Elle prendra la valeur qui se trouve dans le stack. Ainsi vous aurez tout sauf le résultat attendu. Voilà pourquoi, il faut initialiser.

Cdlt,
0