Come sommare gli elementi di un vettore in linguaggio C

Questo programma scritto in linguaggio C calcola la somma degli elementi di un vettore tramite una funzione.

  1. #include <stdio.h>
  2. int somma (int v[], int n) {
  3. int i,s=0;
  4. for (i=0;i<n;i++) s+=v[i];
  5. return s;
  6. }
  7. int main()
  8. {
  9. int vettore[5] = { 1, 2, 3, 4, 5 };
  10. printf("Somma = %d", somma(vettore,5) );
  11. return 0;
  12. }

Come funziona il programma

Nella funzione main, alla riga 9, definisco un array con il nome vettore[] composto da 5 elementi.

Nella riga 10 chiamo la funzione somma() passandoi come parametro l'array vettore[] e una costante numerica (5) che indica il numero degli elementi del vettore (5).

Nota. La definizione della funzione somma() si trova tra le righe 2-6 del programma all'esterno della main().

La funzione somma() riceve i dati e li assegna rispettivamente al vettore v[] e alla variabile numerica intera n.

Poi itera per n volte la struttura ciclica for alla riga 4.

A ogni iterazione somma il valore dell'elemento i-esimo del vettore v[i] alla variabile intera s.

for (i=0;i<n;i++) s+=v[i];

Al termine del ciclo, la funzione somma() restituisce al programma principale main() il valore della variabile s.

Il programma main() riceve e stampa il valore della variabile s.

Somma = 15

E' la somma degli elementi del vettore.

    Codice alternativo

    Questo codice calcola la somma degli elementi del vettore senza utilizzare una funzione.

    1. #include <stdio.h>
    2. int main(void) {
    3. int vector[5] = {1, 2, 3, 4, 5};
    4. int sum = 0;
    5. for (int i = 0; i < 5; i++) {
    6. sum += vector[i];
    7. }
    8. printf("La somma degli elementi del vettore è: %d\n", sum);
    9. return 0;
    10. }

    Nella riga 3 definisco un vettore con cinque elementi.

    Nelle righe 5-7 eseguo un ciclo for con cinque iterazioni per leggere gli elementi del vettore e sommarli nella variabile intera sum.

    Infine, nella riga 8 stampo il risultato sullo schermo.

    Nota. Questo codice è molto più semplice del precedente perché non utilizza la chiamata a una funzione. Tutto il calcolo si svolge nella funzione main(). Tuttavia, in generale è sempre meglio optare per una funzione. In questo modo si può richiamare la stessa routine da più parti del codice sorgente, senza dover riscrivere ogni volta la stessa routine. Inoltre, le funzioni rendono il codice sorgente più leggibile e più facile da modificare

    E così via.

     


     

    Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

    FacebookTwitterLinkedinLinkedin
    knowledge base

    Libri di approfondimento

    Il linguaggio C

    1. Un esempio pratico
    2. Come compilare il programma

    Impariamo a programmare

    1. Come dichiarare le variabili
    2. Gli operatori
    3. La libreria stdio.h
    4. Come visualizzare in output testo e variabili
    5. Come usare le stringhe
    6. L'istruzione IF
    7. Le strutture cicliche
    8. Le funzioni
    9. Gli array