Operatori di confronto in C
Nel linguaggio C gli operatori di confronto permettono di verificare determinate condizioni poste tra due operandi, nello specifico si trattano di operatori binari, pertanto restituiscono valori booleani, ovvero true se la condizione è verificata o false se non è verificata.
Nella seguente tabella vengono riportati i principali operatori di confronto in C, riportando i loro simboli, i loro significati ed un esempio di utilizzo:
Simbolo | Significato | Esempio utilizzo |
> | maggiore | a > b |
>= | maggiore o uguale | a >= b |
< | minore | a < b |
<= | minore o uguale | a <= b |
== | uguale | a == b |
!= | diverso | a != b |
NOTA: il simbolo di uguaglianza (==) non va confuso con il simbolo dell’operatore di assegnamento (=), infatti, se il primo viene utilizzato soltanto nelle operazioni di confronto, l’operatore di assegnamento viene usato per assegnare un valore ad una variabile. Ovvero, da non confondere tra a == b (operatore di uguaglianza) e a = b (operatore di assegnamento).
Esempio operatori aritmetici
Di seguito vengono riportati esempi per ciascuno degli operatori di confronto:
Operatore maggiore (>)
Nel seguente esempio chiediamo all’utente di inserire la sua età e se tale valore è maggiore di 17, verrà stampato a video il messaggio "Sei maggiorenne!", altrimenti verrà stampato "Sei minorenne!".
#include <stdio.h>
int main(){
int anni;
printf("Inserisci la tua eta': ");
scanf("%d", &anni);
if(anni > 17){
printf("Sei maggiorenne!");
} else {
printf("Sei minorenne!");
}
return 0;
}
All’interno dell’istruzione if, invece di scrivere anni>17 è possibile utilizzare l’operatore maggiore o uguale, anni>=18, per ottenere lo stesso risultato finale.
Operatore minore (<)
Con l’operatore minore è possibile riscrivere il codice dell’esempio precedente invertendo l’ordine delle istruzioni if else.
Ma consideriamo il seguente esempio, in cui viene chiesto all’utente di inserire un numero e se tale valore è minore di un certo limite il numero viene accettato altrimenti viene scartato.
#include <stdio.h>
int main(){
float limite = 10, num;
printf("Inserisci un numero qualsiasi: ");
scanf("%f", &num);
if(num < limite){
printf("Numero accettato!");
}
return 0;
}
Operatore di uguaglianza (==)
Nel seguente esempio verifichiamo semplicemente se due variabili contengono lo stesso valore.
#include <stdio.h>
int main(){
int a = 5;
int b = 5;
if(a == b)
printf("uguali");
else
printf("diversi");
return 0;
}
Lo stesso risultato può essere ottenuto usando l’operatore di disuguaglianza (!=).
Indice pagine linguaggio C: