Cyklus for
Další typ cyklu nazýváme cyklem se známým počtem průchodů. Je to taky nejčastější použití tohoto cyklu, i když přesný počet opakování nemusíme vždy přesně znát. Obecná syntaxe příkazu:
for (poč_nastavení; výraz; iterace) příkaz;
Poznámky k provádění:
- počáteční nastavení (inicializace) cyklu se provede jenom jednou před začátkem samotného cyklu
- výraz v závorce se testuje na začátku každého průchodu cyklem
- když výsledkem výrazu je pravda, provede se příkaz
- když výsledkem výrazu je nepravda, cyklus končí a v programu se pokračuje dalším příkazem za cyklem
- příkaz může tvořit taky tzv. složený příkaz (blok) neboli posloupnost více příkazů, které uzavřeme ve složených závorkách
- iterace se provádí na konci každého průchodu cyklem. Jedná se vlastně o nastavení změny řídící proměnné cyklu
Př. Program sečte zadaná čísla. Jejich počet určí uživatel na začátku programu.
#include <stdio.h> #include <stdlib.h> int main() { int i, pocet; float cislo, soucet; printf("\nZadejte pocet cisel: "); scanf("%d",&pocet); for(i=1, soucet=0; i<=pocet; i++) { printf("Zadejte %d.cislo: ", i); scanf("%f", &cislo); soucet = soucet + cislo; } printf("\nSoucet cisel je : %.2f\n\n", soucet); system("pause"); return 0; }
V příkazu for je možné vynechat některou z částí, které jsou uvedeny v závorce za klíčovým slovem. Je možné neuvádět ani jednu část, ale musíme vždy uvést oba středníky. V principu je ale nejlepší uvést všechny 3 části, které charakterizují provádění konkrétní smyčky.
Příkazy break a continue
Příkazy break a continue se používají ve smyčkách, mění jejich standardní provádění.
Příkaz break způsobí okamžité ukončení aktuálního cyklu. Program pokračuje příkazem, následujícím za cyklem. Příkaz break se používá taky v přepínači switch.
Příkaz continue způsobí ukončení aktuálního průchodu cyklem, pokračuje se dalším průchodem. Cyklus nekončí.
Pokud uvedené příkazy použijeme ve vnořeném cyklu, platí pro ten nejblíže vnořený.