Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara For, Continue | Istruzioni di Controllo
Fondamenti Di C

bookFor, Continue

Ciclo For

Il ciclo for incorpora l'inizializzazione del contatore, la condizione per uscire dal ciclo e l'aggiornamento del contatore.

main.c

main.c

copy
123
for (initialization; condition; update) { // Loop body }

Prendiamo l'esempio della lezione precedente (visualizzazione degli elementi di un array) e riformuliamolo utilizzando un ciclo for:

Main.c

Main.c

copy
123456789101112
#include <stdio.h> int main() { int array[] = { 3, 6, 2, 134, 45, 2, 564, 8, 3, 531 }; for (int i = 0; i < 10; i++) { printf("Index of element: %d\tValue of element: %d\n", i, array[i]); } return 0; }

È possibile utilizzare qualsiasi espressione valida come update counter. Questo significa che il contatore può adattarsi in base a qualsiasi regola valida, come (++x * 3) - 5. Inoltre, il contatore può incrementare tramite caratteri invece che numeri.

Main.c

Main.c

copy
123456789
#include <stdio.h> int main() { for (char ch = 'a'; ch <= 'z'; ch++) { printf("ASCII value for %c is %d\n", ch, ch); } return 0; }
Note
Nota

Ricorda che i caratteri sono memorizzati come numeri in memoria.

Anche se ometti alcune parti del ciclo, come l'inizializzazione del contatore, il programma verrà comunque compilato. Tuttavia, il punto e virgola ; rimane essenziale:

Main.c

Main.c

copy
1234567891011
#include <stdio.h> int main() { int i = 0; // without counter initialization for (printf("It`s count initialization, but printf...\n"); i <= 4; i++) { printf("i = %d\n", i); } return 0; }

È possibile utilizzare la virgola , per separare le parti all'interno del ciclo:

Main.c

Main.c

copy
123456789101112
#include <stdio.h> int main() { int i; int n; for (i = 0, n = 5; i <= 5; i++, n++) { printf("i = %d\t n = %d\n", i, n); } return 0; }

Continue

Nei cicli, sia i comandi break che continue risultano utili. Mentre l'istruzione break forza l'uscita dal ciclo, il comando continue consente di passare direttamente alla iterazione successiva.

Si consideri un programma progettato per escludere i numeri interi negativi, utilizzando l'operatore continue:

Main.c

Main.c

copy
123456789101112131415161718
#include <stdio.h> int main() { int array[] = { 124, 235, -321, 32, 54, -549, 23445, 5534, -433 }; printf("Positive elements of array:\n"); for (int i = 0; i < 10; i++) { if (array[i] < 0) { continue; } printf("%d ", array[i]); } return 0; }

I seguenti operatori possono anche funzionare come espressioni per aggiornare il contatore.

question mark

Qual è l'effetto dell'istruzione continue nel ciclo mostrato di seguito?

Select the correct answer

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 4. Capitolo 6

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

Awesome!

Completion rate improved to 2.63

bookFor, Continue

Scorri per mostrare il menu

Ciclo For

Il ciclo for incorpora l'inizializzazione del contatore, la condizione per uscire dal ciclo e l'aggiornamento del contatore.

main.c

main.c

copy
123
for (initialization; condition; update) { // Loop body }

Prendiamo l'esempio della lezione precedente (visualizzazione degli elementi di un array) e riformuliamolo utilizzando un ciclo for:

Main.c

Main.c

copy
123456789101112
#include <stdio.h> int main() { int array[] = { 3, 6, 2, 134, 45, 2, 564, 8, 3, 531 }; for (int i = 0; i < 10; i++) { printf("Index of element: %d\tValue of element: %d\n", i, array[i]); } return 0; }

È possibile utilizzare qualsiasi espressione valida come update counter. Questo significa che il contatore può adattarsi in base a qualsiasi regola valida, come (++x * 3) - 5. Inoltre, il contatore può incrementare tramite caratteri invece che numeri.

Main.c

Main.c

copy
123456789
#include <stdio.h> int main() { for (char ch = 'a'; ch <= 'z'; ch++) { printf("ASCII value for %c is %d\n", ch, ch); } return 0; }
Note
Nota

Ricorda che i caratteri sono memorizzati come numeri in memoria.

Anche se ometti alcune parti del ciclo, come l'inizializzazione del contatore, il programma verrà comunque compilato. Tuttavia, il punto e virgola ; rimane essenziale:

Main.c

Main.c

copy
1234567891011
#include <stdio.h> int main() { int i = 0; // without counter initialization for (printf("It`s count initialization, but printf...\n"); i <= 4; i++) { printf("i = %d\n", i); } return 0; }

È possibile utilizzare la virgola , per separare le parti all'interno del ciclo:

Main.c

Main.c

copy
123456789101112
#include <stdio.h> int main() { int i; int n; for (i = 0, n = 5; i <= 5; i++, n++) { printf("i = %d\t n = %d\n", i, n); } return 0; }

Continue

Nei cicli, sia i comandi break che continue risultano utili. Mentre l'istruzione break forza l'uscita dal ciclo, il comando continue consente di passare direttamente alla iterazione successiva.

Si consideri un programma progettato per escludere i numeri interi negativi, utilizzando l'operatore continue:

Main.c

Main.c

copy
123456789101112131415161718
#include <stdio.h> int main() { int array[] = { 124, 235, -321, 32, 54, -549, 23445, 5534, -433 }; printf("Positive elements of array:\n"); for (int i = 0; i < 10; i++) { if (array[i] < 0) { continue; } printf("%d ", array[i]); } return 0; }

I seguenti operatori possono anche funzionare come espressioni per aggiornare il contatore.

question mark

Qual è l'effetto dell'istruzione continue nel ciclo mostrato di seguito?

Select the correct answer

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 4. Capitolo 6
some-alt