Tableaux comme arguments de fonction
Fait partie de la section Fondamentaux du Journey C de Coddy. Leçon 58 sur 63.
Les tableaux peuvent être passés comme arguments à des fonctions en C. Lorsqu'un tableau est passé à une fonction, ce qui est réellement passé est l'adresse mémoire du premier élément.
Déclarez un tableau et une fonction qui le prend comme argument :
void displayArray(int arr[], int size) {
for(int i = 0; i < size; i++) {
printf("%d ", arr[i]);
}
printf("\n");
}Créez un tableau et appelez la fonction :
int numbers[5] = {10, 20, 30, 40, 50};
displayArray(numbers, 5);Lorsque vous passez un tableau à une fonction, les modifications apportées au tableau à l'intérieur de la fonction affecteront le tableau d'origine :
void doubleValues(int arr[], int size) {
for(int i = 0; i < size; i++) {
arr[i] = arr[i] * 2;
}
}
// Appeler la fonction
doubleValues(numbers, 5);
// Maintenant numbers contient : {20, 40, 60, 80, 100}Défi
FacileCréez une fonction nommée sumArray qui prend deux arguments :
- Un tableau d’entiers (arr).
- Un entier (size) représentant la taille du tableau.
La fonction doit calculer et renvoyer la somme de tous les éléments du tableau.
Ensuite, dans la fonction principale :
- Lisez un entier n (la taille du tableau).
- Lisez n entiers et stockez-les dans un tableau.
- Appelez la fonction sumArray avec le tableau.
- Affichez la somme au format : "Sum: X" (où X est la somme).
Essayez vous-même
#include <stdio.h>
// Écrivez votre fonction sumArray ici
int main() {
int n;
scanf("%d", &n);
int arr[n];
for(int i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
// Appelez la fonction sumArray et affichez le résultat
return 0;
}Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Fondamentaux
2Variables
Types de donnéesEntierVirgule flottante - DoubleCaractèresBooléensConstantesBases de printfRègles de nommage des variablesConversion de type - Partie 1Conversion de type - Partie 2Défi récapitulatif5Entrées et sorties
Spécificateurs de formatBases de scanfDéfi récapitulatif n° 1Validation des entréesDéfi récapitulatif n° 28Tableaux
Déclarer des tableauxAccéder aux élémentsModifier les élémentsTableaux multidimensionnelsDéfi récapitulatif n° 1Tableaux comme arguments de fonctionAlgorithmes sur les tableauxDéfi récapitulatif n° 23Opérateurs
Opérateurs arithmétiquesOpérateur moduloIncrémentation/DécrémentationOpérateurs d’affectationOpérateurs relationnelsOpérateurs logiques — Partie 1Opérateurs logiques — Partie 2Opérateurs logiques — Partie 3Défi récapitulatifEntraînez-vous par vous-même : Compilateur C en ligne