Esercizi operatori logici in C
Codegrind Team•Jul 22 2023
Ecco degli esercizi semplici con soluzione per praticare le basi degli operatori logici in C.
Esercizio 1
Chiedere all'utente di inserire un numero e verificare se è compreso tra due estremi dati.
#include <stdio.h>
int main() {
int numero, estremoMinimo, estremoMassimo;
printf("Inserisci un numero: ");
scanf("%d", &numero);
printf("Inserisci l'estremo minimo: ");
scanf("%d", &estremoMinimo);
printf("Inserisci l'estremo massimo: ");
scanf("%d", &estremoMassimo);
int verifica = (numero > estremoMinimo) && (numero < estremoMassimo);
printf("Il numero è compreso tra gli estremi: %d\n", verifica);
return 0;
}
Esercizio 2
Chiedere all'utente di inserire un numero e verificare se è pari.
#include <stdio.h>
int main() {
int numero;
printf("Inserisci un numero: ");
scanf("%d", &numero);
int verifica = (numero % 2 == 0);
printf("Il numero è pari: %d\n", verifica);
return 0;
}
Esercizio 3
Chiedere all'utente di inserire un numero e verificare se è sia positivo che dispari.
#include <stdio.h>
int main() {
int numero;
printf("Inserisci un numero: ");
scanf("%d", &numero);
int verifica = (numero > 0) && (numero % 2 != 0);
printf("Il numero è positivo e dispari: %d\n", verifica);
return 0;
}
Esercizio 4
Chiedere all'utente di inserire una stringa e verificare se è vuota.
#include <stdio.h>
#include <string.h>
int main() {
char stringa[100];
printf("Inserisci una stringa: ");
scanf("%s", stringa);
int verifica = (strlen(stringa) == 0);
printf("La stringa è vuota: %d\n", verifica);
return 0;
}
Esercizio 5
Chiedere all'utente di inserire una stringa e una sottostringa, quindi verificare se la stringa contiene la sottostringa.
#include <stdio.h>
#include <string.h>
int main() {
char stringa[100], sottostringa[100];
printf("Inserisci una stringa: ");
scanf("%s", stringa);
printf("Inserisci una sottostringa: ");
scanf("%s", sottostringa);
int verifica = (strstr(stringa, sottostringa) != NULL);
printf("La stringa contiene la sottostringa: %d\n", verifica);
return 0;
}
Esercizio 6
Chiedere all'utente di inserire due valori booleani (0 o 1) e verificare se almeno una delle due condizioni è vera.
#include <stdio.h>
int main() {
int condizione1, condizione2;
printf("Inserisci il valore della prima condizione (0 o 1): ");
scanf("%d", &condizione1);
printf("Inserisci il valore della seconda condizione (0 o 1): ");
scanf("%d", &condizione2);
int verifica = (condizione1 || condizione2);
printf("Almeno una condizione è vera: %d\n", verifica);
return 0;
}
Esercizio 7
Chiedere all'utente di inserire due valori booleani (0 o 1) e verificare se entrambe le condizioni sono vere.
#include <stdio.h>
int main() {
int condizione1, condizione2;
printf("Inserisci il valore della prima condizione (0 o 1): ");
scanf("%d", &condizione1);
printf("Inserisci il valore della seconda condizione (0 o 1): ");
scanf("%d", &condizione2);
int verifica = (condizione1 && condizione2);
printf("Entrambe le condizioni sono vere: %d\n", verifica);
return 0;
}
Esercizio 8
Chiedere all'utente di inserire un numero e verificare se è negativo o zero.
#include <stdio.h>
int main() {
int numero;
printf("Inserisci un numero: ");
scanf("%d", &numero);
int verifica = (numero <= 0);
printf("Il numero è negativo o zero: %d\n", verifica);
return 0;
}
Esercizio 9
Chiedere all'utente di inserire 5 numeri interi in un array e verificare se almeno uno dei valori è pari.
#include <stdio.h>
int main() {
int numeri[5];
printf("Inserisci 5 numeri interi:\n");
for (int i = 0; i < 5; i++) {
printf("Numero %d: ", i + 1);
scanf("%d", &numeri[i]);
}
int verifica = 0;
for (int i = 0; i < 5; i++) {
if (numeri[i] % 2 == 0) {
verifica = 1;
break;
}
}
printf("Almeno uno dei valori è pari: %d\n", verifica);
return 0;
}
Esercizio 10
Chiedere all'utente di inserire una stringa e verificare se è palindroma (legge uguale al contrario).
#include <stdio.h>
#include <string.h>
int main() {
char stringa[100];
printf("Inserisci una stringa: ");
scanf("%s", stringa);
int lunghezza = strlen(stringa);
int verifica = 1;
for (int i = 0; i < lunghezza / 2; i++) {
if (stringa[i] != stringa[lunghezza - 1 - i]) {
verifica = 0;
break;
}
}
printf("La stringa è palindroma: %d\n", verifica);
return 0;
}