L'utilizzo dei cicli è fondamentale per ogni tipo di programma. Conosciamo tutti quanto siano importanti le scelte in base agli input dell'utilizzatore, occorre, quindi, conoscere le possibilità di decisione che ci offre il C.
La condizione può essere qualunque espressione, ad esempio una funzione oppure un confonto ecc.
Se la condizione è VERA (true) allora vengono eseguite le istruzioni sotto l'IF, eseguite le quali il programma riprenderà dall'istruzione subito dopo il blocco IF.
Se la condizione è FALSA (false) vengono, invece, eseguite le istruzioni sotto l'ELSE.
Occorre notare che il blocco ELSE può essere omesso nel caso che, se la condizione fosse falsa, ci basti proseguire con il programma.
Blocco CASE
Sintassi:
switch ( espressione)
{
case valore:
istruzioni;
break;
case valore2:
istruzioni;
break;
default:
istruzioni;
}
Il blocco switch...case è utile qundo ci sono molte possibilità di scelta.
'Espressione' è l'espressione di cui vogliamo controllare il valore.
Controllato il valore dell' espressione, il programma passa uno ad uno i 'case' confontando questo valore con quello a fianco del case: se i due sono sono uguali vengono eseguite le istruzioni sotto al case in questione e alla fine il programma riparte subito dopo il blocco.
Le istruzioni sotto default vengono eseguite nel caso nessuno dei case sia uguale all'espressione di controllo.
Se omettete la parola BREAK alla fine di ogni case, il programma eseguirà comunque anche le istruzioni sotto 'default' prima di uscire dal blocco.
Ciclo FOR
Sintassi:
for (contatore ; condizione ; operazione)
{ istruzioni; }
Es.
for ( int i=0; i < 3; i++)
{ printf("Hello");}
L'esempio stamperà 3 volte a schermo la stringa "Hello".
Il ciclo for viene eseguito finchè la condizione risulta vera, in questo caso finchè i è minore di 3.
Il contore o variabile di controllo, la si chiami come si vuole, può essere inizializzata direttamente, oppure se ne utilizza una già inizializzata nella funzione.
Il campo operazione è semplicemente l'operazione che vogliamo sia eseguita ad ogni ciclo sul contatore e può essere di qualunque tipo
Un loop infinito può esser : for ( ; ; ) { istruzioni; } usciremo da questo ciclo con l'istruzione break
Ciclo WHILE
Molto simile a quello for
Sintassi:
while ( espressione )
{ istruzioni; }
OPPURE
do
{ istruzioni; }
while (espressione);
Nella prima sintassi le istruzioni vengono eseguite MENTRE l'espressione è VERA, si esce dal ciclo o quando l'espressione diventa false o con break.
Nella seconda sintassi non cambia nulla se non che il ciclo viene eseguito SEMPRE almeno una volta, in quanto il controllo è effettuato in coda
I cicli sono questi, per memorizzarli provate a fare dei programmini che li utilizzino, non sono affatto difficili da scrivere!