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

Suggested prompts:

Can you give an example of a for loop using these operators?

What happens if I use multiple update expressions in a for loop?

Can you explain more about using characters as counters in a for loop?

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