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
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!