Je viens de débuter la programmation avec C, j'essaye de faire un exercice banal d'un programme qui calcule la somme des valeurs d'un tableau mais je me retrouve avec un problème ou plusieurs: Error: too few arguments to function 'SommeTableau'. Je sais que c'est un problème de nombre de paramètre mais j'arrive pas à trouver mon erreur. Votre aide serait précieuse.
#include <stdio.h>
#include <stdlib.h>
int SommeTableau(int tableau[],int taille);
int main()
{
printf("La somme des valeurs du tableau est: %d\n",SommeTableau());
return 0;
}
int SommeTableau(int tableau[],int taille)
{
int somme=0,i;
printf("Veuillez inserer les données du tableau:\n");
printf("C'est un tableau de combien de colonnes?\n");
scanf("%d",&taille);
printf("Entrer la valeur de la première colonne\n");
scanf("%d",&tableau[0]);
printf("Entrer la valeur de la deuxieme colonne\n");
scanf("%d",&tableau[1]);
printf("Entrer la valeur de la troisieme colonne\n");
scanf("%d",&tableau[2]);
printf("Entrer la valeur de la quatrieme colone\n");
scanf("%d",&tableau[3]);
printf("Entrer la valeur de la cinquieme colone\n");
scanf("%d",&tableau[4]);
for(i=0;i<taille;i++)
{
somme=somme+tableau[i];
}
return somme;
}
- Edité par Lino_undercover 23 février 2021 à 15:29:17
Le message qui suit est une réponse automatique activée par un membre de l'équipe. Les réponses automatiques leur permettent d'éviter d'avoir à répéter de nombreuses fois la même chose, ce qui leur fait gagner du temps et leur permet de s'occuper des sujets qui méritent plus d'attention. Nous sommes néanmoins ouverts et si vous avez une question ou une remarque, n'hésitez pas à contacter la personne en question par Message Privé. Pour plus d'informations, nous vous invitons à lire les règles générales du forum
Merci de colorer votre code à l'aide du bouton Code
Les forums d'Openclassrooms disposent d'une fonctionnalité permettant de colorer et mettre en forme les codes source afin de les rendre plus lisibles et faciles à manipuler par les intervenants. Pour cela, il faut utiliser le bouton de l'éditeur, choisir un des langages proposés et coller votre code dans la zone prévue. Si vous utilisez l'éditeur de messages en mode Markdown, il faut utiliser les balises <pre class="brush: cpp;">Votre code ici</pre>.
Merci de modifier votre message d'origine en fonction.
Merci mon probleme c'était le pointeur en fait. J'ai crée le tableau et sa taille dans main et j'ai ajouté ces paramètres à l'appel de la fonction sommetableau. C'est venu mais ça ne fait pas ce que je voulais... Je vais encore m'y mettre. Merci
#include <stdio.h>
#include <stdlib.h>
int SommeTableau(int tableau[],int taille);
int main()
{
int taille,tableau[taille];
printf("La somme des valeurs du tableau est: %d\n",SommeTableau(*tableau,taille));
return 0;
}
int SommeTableau(int tableau[],int taille)
{
int somme=0,i;
printf("Veuillez inserer les données du tableau:\n");
printf("C'est un tableau de combien de colonnes?\n");
scanf("%d",&taille);
printf("Entrer la valeur de la première colonne\n");
scanf("%d",&tableau[0]);
printf("Entrer la valeur de la deuxieme colonne\n");
scanf("%d",&tableau[1]);
printf("Entrer la valeur de la troisieme colonne\n");
scanf("%d",&tableau[2]);
printf("Entrer la valeur de la quatrieme colone\n");
scanf("%d",&tableau[3]);
printf("Entrer la valeur de la cinquieme colone\n");
scanf("%d",&tableau[4]);
for(i=0;i<taille;i++)
{
somme=somme+tableau[i];
}
return somme;
}
Il y a une autre erreur, qui concerne le découpage.
Quand on demande de faire une fonction qui RETOURNE LA SOMME d'un tableau, cette fonction ne doit s'occuper de la SAISIE du tableau. Ni afficher le résultat. C'est pas ses oignons.
C'est important de faire des fonctions qui s'occupe de faire UNE chose.
- Edité par michelbillaud 23 février 2021 à 16:02:59
Et ça n'est pas *tableau qu'il faut passer à la fonction c'est tableau. Le premier désigne la premier élément du tableau, le second c'est le nom du tableau qui est équivalent à un pointeur sur le premier élément. Et attention, ton code utilise ce que l'on appelle un VLA, il est toujours préférable de créer un tableau dont la taille est une constante de compilation
#define TAILLE_AMX 100
int main(void) {
int tableau[TAILLE_MAX];
......
int taille_reelle = .....
......
printf( "La somme des valeurs du tableau est: %d\n", SommeTableau( tableau, taille_reelle ) );
}
Et entre la ligne 3 et la ligne 7 tu mets le code pour remplir ton tableau.
- Edité par Dalfab 23 février 2021 à 16:56:50
En recherche d'emploi.
Error: too few arguments to function
× 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.
En recherche d'emploi.