I 100 libri da non perdere

In questa lezione parleremo di if else in C e faremo degli esempi per cercare di capire come utilizzare questo costrutto di selezione.

Come abbiamo già detto l’istruzione di selezione if else permette di fare una scelta. Cioè si effettua un test e se questo è vero si procede con delle istruzioni, altrimenti si procede con delle altre istruzioni.

Quindi se (if) una condizione è vera viene fatta una determinata cosa, altrimenti (else) ne verrà fatta un’altra, se è specificata la condizione else.


Primo esempio di if else in C

Facciamo degli esempi per capire meglio il concetto.

Prendiamo in input due numeri e stabiliamo qual è il maggiore.

Ecco di seguito il codice sviluppato in linguaggio C:

....
if(a>b)

     printf("a maggiore di b");

else

     printf("a minore di b");
...

Ma l’algoritmo è impreciso in quanto a può anche essere uguale a b. Allora presentiamo una soluzione più accurata.

if(a>b)

    printf("a maggiore di b");

else if(a<b)

    printf("a minore di b\n");

else

     printf("a e b sono uguali");

In questo esempio abbiamo utilizzato l’istruzione if, else if, else in C.

Quindi si valuta innanzitutto se a è maggiore di b. Se ciò risulta essere vero allora si scrive “a maggiore di b” e si salta tutto il resto.

Altrimenti valutiamo se a è minore di b. Se è vero si esegue l’istruzione, cioè si visualizza in output il messaggio “a minore di b“.

Altrimenti, se neanche questa condizione è vera, per cosa ovvia a e b sono uguali e dunque si visualizza in output “a e b sono uguali“.

Esempio completo:


#include <stdio.h>
//esempi di selezione con if else in C

int main ()
{
	int a;
	int b;
	printf ("inserisci a:\n");
	scanf("%d", &a);
	printf ("inserisci b:\n");
	scanf("%d", &b);
	
	
	//esempio di if con una istruzione
	if (a>b)
		printf("a maggiore di b");		

	//esempio di if con uso di più istruzioni per cui 
	//occorrono le parentesi graffe
	if (a>b)
	{
		printf("questo programma dice:\n ");
		printf("a maggiore di b");
		
	}
	//esempio di if ...else
	if (a>b)
		printf("a maggiore di b\n");
	else 
		printf("a non e' maggiore di b\n");		

//esempio di if ...else if
	if (a>b)
		printf("a maggiore di b\n");
	else if(a<b)
		printf("a e' minore di b\n");
	else
	printf("a e b sono uguali\n");
	
system("PAUSE");	
	
}

Questo è solo un esempio di istruzione if else in C, andando avanti nel tutorial affronteremo tanti altri esercizi.

Alcuni link utili

Indice argomenti linguaggio C

Introduzione al linguaggio C

Le variabili in C

Operatori di confronto

Le funzioni di input e output

Area di un rettangolo in C

Casting in C

Istruzione di selezione in C

If else in C

Numero pari in C

Switch case in C

Esempi di switch case in C