Array come argomenti di funzione
Fa parte della sezione Fondamenti del percorso C di Coddy. Lezione 58 di 63.
Gli array possono essere passati come argomenti alle funzioni in C. Quando un array viene passato a una funzione, ciò che viene effettivamente passato è l'indirizzo di memoria del primo elemento.
Dichiara un array e una funzione che lo accetta come argomento:
void displayArray(int arr[], int size) {
for(int i = 0; i < size; i++) {
printf("%d ", arr[i]);
}
printf("\n");
}Crea un array e chiama la funzione:
int numbers[5] = {10, 20, 30, 40, 50};
displayArray(numbers, 5);Quando passi un array a una funzione, le modifiche apportate all'array all'interno della funzione influenzeranno l'array originale:
void doubleValues(int arr[], int size) {
for(int i = 0; i < size; i++) {
arr[i] = arr[i] * 2;
}
}
// Chiama la funzione
doubleValues(numbers, 5);
// Ora numbers contiene: {20, 40, 60, 80, 100}Sfida
FacileCrea una funzione chiamata sumArray che accetta due argomenti:
- Un array di interi (arr).
- Un intero (size) che rappresenta la dimensione dell'array.
La funzione deve calcolare e restituire la somma di tutti gli elementi nell'array.
Poi, nella funzione principale:
- Leggi un intero n (la dimensione dell'array).
- Leggi n interi e memorizzali in un array.
- Chiama la funzione sumArray con l'array.
- Stampa la somma nel formato: "Sum: X" (dove X è la somma).
Provalo tu
#include <stdio.h>
// Scrivi qui la tua funzione sumArray
int main() {
int n;
scanf("%d", &n);
int arr[n];
for(int i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
// Chiama la funzione sumArray e stampa il risultato
return 0;
}Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.
Tutte le lezioni di Fondamenti
2Variabili
Tipi di datiInteroFloat - DoubleCaratteriValori booleaniCostantiFondamenti di printfRegole di denominazione delle variabiliConversione di tipo parte 1Conversione di tipo parte 2Sfida di ripasso5Input e output
Specificatori di formatoNozioni di base su scanfSfida di ripasso #1Convalida dell'inputSfida di ripasso #28Array
Dichiarare gli arrayAccedere agli elementiModificare gli elementiArray multidimensionaliSfida di ripasso #1Array come argomenti di funzioneAlgoritmi sugli arraySfida di ripasso #23Operatori
Operatori aritmeticiOperatore moduloIncremento/DecrementoOperatori di assegnazioneOperatori relazionaliOperatori logici Parte 1Operatori logici Parte 2Operatori logici Parte 3Sfida di riepilogoEsercitati da solo: Compilatore C online