Programmazione strutturata è un programmazione che si basa su tre costrutti fondamentali: Sequenza, Selezione e Iterazione.
Lo sviluppo Top Down in programmazione strutturata significa suddividere un problema in sottoproblemi di difficoltà minore.
La modularità in programmazione strutturata permette la possibilità di usare moduli (programmi/sottoprogrammi) già scritti e testati.
Una funzione in programmazione è una sequenza di istruzioni “contenute” in un unico blocco che effettua elaborazioni sui dati.
Tipi di funzioni includono void, int, double, float, bool, char.
La funzione void non restituisce alcun valore.
Le funzioni che restituiscono valori includono int, double, float, bool, char.
Per invocare una funzione in programmazione, si deve prima dichiararla e poi chiamarla.
Tipo, variabile e valore devono essere compatibili in programmazione.
Durante l'esecuzione della funzione, attraverso i puntatori si lavora sulla stessa cella e quindi le modifiche vengono mantenute.
Il prototipo si definisce scrivendo l’intestazione della funzione completata dal punto e virgola.
Durante l'esecuzione della funzione, qualsiasi modifica apportata ai parametri formali sarà visibile solo all'interno della funzione e non verrà riportata sui parametri attuali (si lavora su copie).
In C, è possibile dichiarare variabili con lo stesso identificatore in ambienti diversi perché la variabile locale in una funzione non è visibile al di fuori di essa, e quindi in ogni ambiente locale è unica.
Per poter modificare il valore di un parametro, dobbiamo passarne l'indirizzo, cioè la variabile attuale e la variabile formale devono puntare alla stessa cella di memoria.
Con passaggio dei parametri si intende l'operazione con la quale il valore dei parametri attuali viene associato (trasmesso) a quello dei parametri formali; questo passaggio in C avviene solo per valore.
I parametri formali e attuali devono corrispondere in numero, tipo e ordine.
Il codice di una funzione è scritto una sola volta ma può essere eseguito più volte in programmazione.
Le funzioni consentono di suddividere il programma in sottoprogrammi e quindi di semplificare il lavoro (di gruppo) in programmazione.
Le funzioni permettono di implementare e provare singolarmente (con input fittizi) in programmazione.
Le funzioni possono essere raggruppate in una libreria e quindi riutilizzate anche in altri programmi in programmazione.
Le funzioni semplificano la scrittura e la leggibilità di un programma (e quindi anche il debug e la modifica) in programmazione.