For, Continue
For-silmukka
for-silmukka yhdistää laskurin alustuksen, silmukan lopetusehdon sekä laskurin päivityksen.
main.c
123for (initialization; condition; update) { // Loop body }
Otetaan aiemman luvun esimerkki (taulukon alkioiden näyttäminen) ja muokataan se käyttämään for-silmukkaa:
Main.c
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; }
Voit käyttää mitä tahansa kelvollista lauseketta update counter. Tämä tarkoittaa, että laskuri voi mukautua minkä tahansa sallitun säännön mukaan, kuten (++x * 3) - 5. Lisäksi laskuri voi kasvaa merkeittäin numeroiden sijaan.
Main.c
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; }
Huomaa, että merkit tallennetaan numeroina muistiin.
Vaikka jättäisit osia silmukasta pois, kuten laskurin alustuksen, ohjelma kääntyy silti. Puolipiste ; on kuitenkin edelleen välttämätön:
Main.c
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; }
Voit käyttää pilkkua , erottelemaan osia silmukan sisällä:
Main.c
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
Silmukoissa sekä break että continue -komennot ovat hyödyllisiä. break-lause katkaisee silmukan suorittamisen, kun taas continue ohittaa seuraavaan iteraatioon.
Tarkastellaan ohjelmaa, joka ohittaa negatiiviset kokonaisluvut käyttämällä continue-operaattoria:
Main.c
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; }
Seuraavat operaattorit voivat myös toimia lausekkeina laskurin päivittämiseen.
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme
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
For, Continue
Pyyhkäise näyttääksesi valikon
For-silmukka
for-silmukka yhdistää laskurin alustuksen, silmukan lopetusehdon sekä laskurin päivityksen.
main.c
123for (initialization; condition; update) { // Loop body }
Otetaan aiemman luvun esimerkki (taulukon alkioiden näyttäminen) ja muokataan se käyttämään for-silmukkaa:
Main.c
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; }
Voit käyttää mitä tahansa kelvollista lauseketta update counter. Tämä tarkoittaa, että laskuri voi mukautua minkä tahansa sallitun säännön mukaan, kuten (++x * 3) - 5. Lisäksi laskuri voi kasvaa merkeittäin numeroiden sijaan.
Main.c
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; }
Huomaa, että merkit tallennetaan numeroina muistiin.
Vaikka jättäisit osia silmukasta pois, kuten laskurin alustuksen, ohjelma kääntyy silti. Puolipiste ; on kuitenkin edelleen välttämätön:
Main.c
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; }
Voit käyttää pilkkua , erottelemaan osia silmukan sisällä:
Main.c
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
Silmukoissa sekä break että continue -komennot ovat hyödyllisiä. break-lause katkaisee silmukan suorittamisen, kun taas continue ohittaa seuraavaan iteraatioon.
Tarkastellaan ohjelmaa, joka ohittaa negatiiviset kokonaisluvut käyttämällä continue-operaattoria:
Main.c
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; }
Seuraavat operaattorit voivat myös toimia lausekkeina laskurin päivittämiseen.
Kiitos palautteestasi!