Esercizi break e continue in C
Ecco degli esercizi semplici con soluzione per praticare le basi del break e continue in C.
Esercizio 1
Stampa dei numeri da 1 a 10, saltando il numero 5 utilizzando l'istruzione continue:
#include <stdio.h>
int main() { for (int i = 1; i <= 10; i++) { if (i == 5) { continue; } printf("%d ", i); }
return 0;}
Esercizio 2
Calcolo della somma dei numeri da 1 a 100, interrompendo il ciclo quando si raggiunge una somma di almeno 500 utilizzando l'istruzione break:
#include <stdio.h>
int main() { int somma = 0;
for (int i = 1; i <= 100; i++) { somma += i;
if (somma >= 500) { break; } }
printf("La somma dei numeri è: %d\n", somma);
return 0;}
Esercizio 3
Stampa dei numeri pari da 1 a 20, saltando i numeri dispari utilizzando l'istruzione continue:
#include <stdio.h>
int main() { for (int i = 1; i <= 20; i++) { if (i % 2 != 0) { continue; } printf("%d ", i); }
return 0;}
Esercizio 4
Stampa dei numeri primi da 1 a 50 utilizzando l'istruzione break:
#include <stdio.h>
int main() { for (int i = 2; i <= 50; i++) { int j;
for (j = 2; j < i; j++) { if (i % j == 0) { break; } }
if (j == i) { printf("%d ", i); } }
return 0;}
Esercizio 5
Calcolo del fattoriale di un numero, interrompendo il calcolo se il fattoriale supera un certo limite utilizzando l'istruzione break:
#include <stdio.h>
int main() { int numero; unsigned long long fattoriale = 1; unsigned long long limite = 1000000000; // Limite del fattoriale
printf("Inserisci un numero: "); scanf("%d", &numero);
for (int i = 1; i <= numero; i++) { fattoriale *= i;
if (fattoriale > limite) { printf("Il fattoriale supera il limite consentito.\n"); break; } }
printf("Il fattoriale di %d è: %llu\n", numero, fattoriale);
return 0;}
Esercizio 6
Ricerca di un numero in un array, interrompendo la ricerca quando il numero viene trovato utilizzando l'istruzione break:
#include <stdio.h>
int main() { int numeri[] = {5, 8, 12, 3, 10}; int lunghezza = sizeof(numeri) / sizeof(numeri[0]); int numeroDaCercare; int trovato = 0;
printf("Inserisci un numero da cercare: "); scanf("%d", &numeroDaCercare);
for (int i = 0; i < lunghezza; i++) { if (numeri[i] == numeroDaCercare) { trovato = 1; break; } }
if (trovato) { printf("Il numero è presente nell'array.\n"); } else { printf("Il numero non è presente nell'array.\n"); }
return 0;}
Esercizio 7
Stampa dei numeri da 1 a 100, interrompendo la stampa quando si raggiunge un numero multiplo di 7 utilizzando l'istruzione break:
#include <stdio.h>
int main() { for (int i = 1; i <= 100; i++) { printf("%d ", i);
if (i % 7 == 0) { break; } }
return 0;}
Esercizio 8
Stampa dei caratteri di una stringa, saltando lo spazio utilizzando l'istruzione continue:
#include <stdio.h>
int main() { char stringa[] = "Ciao Mondo"; int lunghezza = sizeof(stringa) / sizeof(stringa[0]);
for (int i = 0; i < lunghezza; i++) { if (stringa[i] == ' ') { continue; } printf("%c ", stringa[i]); }
return 0;}
Esercizio 9
Calcolo della somma dei numeri pari da 1 a 100, saltando i numeri dispari utilizzando l'istruzione continue:
#include <stdio.h>
int main() { int somma = 0;
for (int i = 1; i <= 100; i++) { if (i % 2 != 0) { continue; } somma += i; }
printf("La somma dei numeri pari da 1 a 100 è: %d\n", somma);
return 0;}
Esercizio 10
Stampa dei numeri da 1 a 100, saltando i multipli di 3 e 5 utilizzando l'istruzione continue:
#include <stdio.h>
int main() { for (int i = 1; i <= 100; i++) { if (i % 3 == 0 || i % 5 == 0) { continue; } printf("%d ", i); }
return 0;}