A ciklus számláló - studopediya

hurok üzemben

Ez egy kényelmes rövidítése egy while ciklus típusát

Expression e1 beállítani a kezdeti feltételeket, a hurok, az expressziós e2 ellenőrzésére szolgál kimeneti feltételeit a ciklust, és e3 expressziója módosítja a megadott feltételek az expressziós e1. Bármilyen kifejezések E1, E2, E3 elhagyható. Ha nincs megadva e2, akkor alapértelmezés helyett helyettesíti az értéke TRUE. Például, a ciklus

leeresztett e1, e3 egyenértékű a ciklust

minden levert kifejezések egyenértékűek a ciklus

azaz egyenértékű egy végtelen ciklusba. Ez a ciklus megszakad csak explicit kilépés onnan keresztül szünet szereplők, goto, visszatérő szereplő, ciklus testét.

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, amikor a kezelő s egy continue utasítás vagy vegyület tartalmazó nyilatkozat continue utasítás. 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 expresszióra e3 végzett értékének kiszámításához az expressziós e2, míg az ekvivalens ciklus közben expressziós e3 átugorja.

Tervezési rugalmasság - következtében a módszer segítségével a kifejezések a ciklusban leírás. Eddig az első kifejezés lehet inicializálni a számláló, és a második - a beállítás a határértéket, és a harmadik -, hogy növelje a jelenlegi értéket 1-re, de amellett, hogy ezt a funkciót, sok más lehetőség az alkalmazás, ebből kilenc adunk az alábbiakban.

  1. 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:
2. az (n = 10; n> 0; n -) 3. printf ( "\ n másodpercig.!", n); printf ( "Start \ n!");
  1. Adott esetben pontozási kettesével, több tíz, stb.:
5. A (n = 2; n<60;n=n+13);printf(".\n",n);
  1. Lehet számolni segítségével a szimbólumok, nem csak a számok:
7. az (ch = 'a'; ch<='z';ch++)printf("Величина кода ASCII для %с равна ..\n",ch,ch);

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.

  1. 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:
9. / * táblázat kockák * / 10.main () 11.

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.

  1. 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:
16.for (x = 100,0; X<150.0; x=x*1.1)printf("Ваш долг теперь %3.2f.\n",x);

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.
  1. 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:
18.for (x = y = 1; y<=75; y=5*x++)printf("%10d %10d\n",x,y);

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.

  1. Akkor is kihagyjon egy vagy több kifejezést, de szimbólumok nem hagyható „pontosvessző”. hurok test
20.for (;;)

végrehajtja végtelen számú alkalommal, mert az üres állapotot mindig úgy igaz.

  1. 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.
23.for (printf ( "Kísérje számának \ n!") ;! Num = 6;) 24.scanf (NUM ""); printf ( "Pontosan ez az, amit akarok \ n!");

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.

  1. 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:
A (n = 1; n<1000; n+t)

É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.

Kapcsolódó cikkek