1 operátor
Az üzemeltető a hurok a következő formában:
A (init_expression; loop_condition; loop_expression) programot nyilatkozat;
Három zárójelek közé a for ciklus nyilatkozat ismerteti a feltételeket a program során.
Init_expression első paraméter beállítására használjuk az értékeket a kezdő ciklusban (beállítani a kezdeti feltételeket, a hurok)
A második komponens határozza loop_condition feltétel vagy feltételek, amelyek mellett kerül ki a hurok. Az ismétlés fog bekövetkezni, amíg ez az állapot (vagy feltétel). Ha ez a feltétel nem teljesül, akkor a ciklus azonnal véget ér.
A harmadik paraméter loop_expression végrehajtásra minden alkalommal, amikor a feldolgozás véget ér a ciklus törzsének, azaz programot nyilatkozat (kifejezés loop_expression módosítja a megadott kifejezéssel init_expression).
Leggyakrabban a kifejezést init_expression és loop_expression üzemeltetők megbízások vagy függvényhívás, és a második kifejezés loop_condition - egy kifejezés egy kapcsolat vagy egy logikai kifejezés.
Bármelyik három részre lehet hagyni, de a pontosvessző kell maradnia a helyüket. Elhagyása init_expression vagy loop_expression, majd a megfelelő művelet. Ha a csepp teszt loop_condition feltételek alapértelmezésben úgy tekintjük, hogy a folytatása a ciklus feltétel mindig igaz, majd a ciklus végtelen (végtelen ciklusba kerül sor). azaz ha elhagyjuk loop_condition alapértelmezés szerint ehelyett helyettesíti az értéke TRUE.
Ha azt szeretnénk, hogy futtatni több utasítást kell azokat zárójelek között, azaz egység:
A jelen esetben a hurok test a fogszabályozó.
ciklus tervezése, végrehajtása az üzemeltető által, ki lehet alakítani, és akkor is, amikor az üzemeltető az alábbiak szerint:
Kivételt képez ez alól a használata folyamatosan működnek.
Tsiklfor (; loop_condition;) programot nyilatkozat;
leeresztett init_expression, loop_expression egyenértékű ciklus
while (loop_condition) programot nyilatkozat;
minden levert kifejezések egyenértékűek a ciklus
while (true) programot nyilatkozat;
azaz egyenértékű egy végtelen ciklusba. Ez a ciklus megszakad csak explicit kilépés ebből keresztül szereplők törés, goto, visszatérő szereplő, a ciklus törzsének programot nyilatkozatot.
A relációs operátorok a táblázatban. 6.1.
nagyobb vagy egyenlő
A program nyelve alkalmazni ágyazott hurkok, amelyek mindegyike által ellenőrzött változó ciklus és kapcsolatban (a második kifejezés zárójelben az üzemeltető). Ágyazott hurkok lehet közvetlenül egymáshoz, vagy egy hurkot szerv útján fogszabályozó. Az is lehetséges, hogy két index változók inicializálása Start ciklus későbbi megnövelését (növekedés) vagy csökken (csökkenése).
Annak ellenére, hogy a hasonlóság, hogy a ciklusokat Pascal és Ada, vagy ciklusokat csinálni Fortran vagy PL / 1, C nyelv hurok nem szemantikai példányt. A for ciklus a C nyelv sokkal gyakoribb, mint a hurkok, és más nyelveken. Ellentétben ezek a ciklusok, általában az ismétlések számát a hurok a C nyelv nem lehet meghatározni, mielőtt ezt a ciklust.
A ciklus az alternatív és annak ciklus közben szemantikailag szinte egyenértékű, de, amint azt a műveletet (Ritchie, D. M. 1980. A programozási nyelv -. Reference Manual / ATT Bell Laboratories, Murray Hill, New Jersey 07974), nem azonosak. Például vegyük azt az esetet, ha a feldolgozó program állítás továbbra nyilatkozat vagy vegyület tartalmazó nyilatkozat továbbra nyilatkozatot. Az akció az üzemeltető, hogy továbbra is az átmenet a végén a ciklus, amelynek különböző következményei vannak a hurok és az azzal egyenértékű formájában, miközben hurkot. Abban az esetben, a ciklus loop_expression kifejezés kiértékelése értékének kiszámításához a kifejezés loop_condition, mivel ezzel egyenértékű ciklus while kifejezés loop_expression kimarad.
Tervezési rugalmasság - következtében a módszer segítségével a kifejezések a ciklusban leírás. Sok felhasználási lehetőségeit ciklus, amelyek közül néhány bemutatjuk az alábbiakban.
- Használhatja a nagyítás számlázni emelkedő sorrendben:
- Lehet használni csökkentik a működési számlálására csökkenő sorrendben helyett a számla növekvő sorrendben:
- Adott esetben pontozási kettesével, több tíz, stb.:
- Lehet számolni segítségével a szimbólumok, nem csak a számok:
Ezzel az üzemeltető kiírja az összes levelét, z, együtt ASCII kódokat. Ez a kijelentés azért működik, mert a karaktereket a készülék memóriájában kerülnek a számok formájában, és ezért ez a fragmentum alkalmazásával végezzük egészek.
- Meg tudja nézni a teljesítménye néhány önkényes feltételeket, kivéve a feltételeket szabnak az ismétlések számát. Vegyük példának a program a nyomtatási táblázat kocka egész:
Most cserélje ki a leírás
A (num = 1; num<=6; num++)
A (num = 1; num<6; num++)
Ajánlatos lenne abban az esetben, ha mi is nagyobb részt korlátozza a maximális szám tartományban kocka, hanem az iterációk számát.
- Ez lehetséges, hogy a értéke néhány értékek növekedtek olyan mértani helyett számtani sorozat, azaz a ahelyett, hogy a rögzített érték minden ciklusban, hogy végre szorzás lépés:
Ez a program fragmens változó értéke x szorozva 1,1 minden egyes lépésében a ciklus, hogy növeli a 10%. Az eredmény a következő:
Az adósság már 100.00.Vash adósság már 110.00.Vash adósság már 121.00.Vash adósság mostantól 133.10.Vash adósság már 146,41.- Egy harmadik expressziós lehet bármilyen jól formált expressziót. Bármi távon mi is jeleztük, az értéke meg fog változni minden egyes lépésben:
Felhívjuk figyelmét, hogy a ciklus leírás ellenőrzi az értéke y helyett x. A mindhárom kifejezést, amely vezérli a for ciklus használható változókat.
Bár ez a példa helyes, akkor nem szolgálhat illusztrálására jó programozási stílus. A program nézett volna sokkal érthető, ha nem keverve a folyamat módosítja a hurok változó algebrai számításokat.
- Akkor is kihagyjon egy vagy több kifejezést, de szimbólumok nem hagyható „pontosvessző”. hurok test
végrehajtja végtelen számú alkalommal, mert az üres állapotot mindig úgy igaz.
- Az első kifejezés nem kell inicializálni egy változót. Ehelyett, például, nem lenne printf () utasítás. Ez csak akkor szükséges megjegyezni, hogy az első kifejezés csak egyszer értékelődik, mielőtt a többi ciklus kerül végrehajtásra.
Ebben kódot az első üzenet a kimeneten nyomtatásához egyszer majd pedig megkapta Zónaszámokról egészen a 6-os szám nem kapott.
- A paraméterek kifejezések, amelyek a ciklus leírások lehet változtatni a műveleteket a ciklus törzse. Tegyük fel például, hogy van egy sorozat a leírás a következő formában:
És ha a programot, miután több iteráció megállapítja, hogy a t értéke túl kicsi vagy nagy, az if módosíthatja az értéket a cikluson belül. Az interaktív program, a felhasználó módosíthatja ezt a beállítást a hurok.
Összefoglalni. Az az állítás használ három kifejezést, hogy ellenőrizzék hurok teljesítményét. Vannak elválasztva a szimbólum „pontosvessző”. Az inicializálási kifejezés kiértékelése előtt csak egyszer végrehajtó bármelyik szereplő a ciklus. Ha a teszt kifejezés igaz, vagy nem egyenlő nullával, a test egyszer kerül végrehajtásra. Ezután kiszámítja a korrigált értéket a kifejezés, és az értéke a vizsgált kifejezés meghatározzuk újra. az üzemeltető - a hurok előfeltétele. A döntés arról, hogy végre ismét a hurok szerv vagy nem elfogadott, mielőtt az áthaladást. Ezért előfordulhat, hogy a szervezet nem fogja soha nem teljesülnek. Az üzemeltető meghatároz egy gyűrű test lehet mind egyszerű, mind összetett.
Operation „vessző” növeli a rugalmasságot hurok, amely lehetővé teszi, hogy erről a tényről leírás néhány inicializálási vagy korrekciós nyilatkozatok.