V tomto kurzu se naučíte vytvářet smyčku v programování C pomocí příkladů.
V programování se smyčka používá k opakování bloku kódu, dokud není splněna zadaná podmínka.
Programování v C má tři typy smyček:
- pro smyčku
- zatímco smyčka
- dělat … zatímco smyčka
O forsmyčce se dozvíme v tomto tutoriálu. V další lekci budeme seznámí whilea do… whilesmyčky.
pro Loop
Syntaxe forsmyčky je:
for (initializationStatement; testExpression; updateStatement) ( // statements inside the body of loop )
Jak funguje smyčka?
- Inicializační příkaz je proveden pouze jednou.
- Poté se vyhodnotí testovací výraz. Pokud je testovací výraz vyhodnocen jako false,
forsmyčka je ukončena. - Pokud je však testovací výraz vyhodnocen na true,
forjsou provedeny příkazy uvnitř těla smyčky a aktualizovaný výraz je aktualizován. - Opět se vyhodnotí testovací výraz.
Tento proces pokračuje, dokud testovací výraz není falešný. Když je testovací výraz nepravdivý, smyčka se ukončí.
Pokud se chcete dozvědět více o testovacím výrazu (když je testovací výraz vyhodnocen na true a false), podívejte se na relační a logické operátory.
pro vývojový diagram smyčky

Příklad 1: pro smyčku
// Print numbers from 1 to 10 #include int main() ( int i; for (i = 1; i < 11; ++i) ( printf("%d ", i); ) return 0; )
Výstup
1 2 3 4 5 6 7 8 9 10
- i je inicializováno na 1.
- Vyhodnocuje se testovací výraz
i < 11. Protože 1 je menší než 11, je provedeno těloforsmyčky. Tím se vytiskne 1 (hodnota i) na obrazovce. - Je
++iproveden příkaz k aktualizaci . Nyní bude hodnota i 2. Opět se testovací výraz vyhodnotí na true a provede se tělo smyčky for. Tím se na obrazovce vytiskne 2 (hodnota i). - Opět
++ise provede příkaz aktualizace ai < 11vyhodnotí se testovací výraz . Tento proces pokračuje, dokud mi nebude 11. - Když se i stane 11, i <11 bude nepravdivé a
forsmyčka bude ukončena.
Příklad 2: pro smyčku
// Program to calculate the sum of first n natural numbers // Positive integers 1,2,3… n are known as natural numbers #include int main() ( int num, count, sum = 0; printf("Enter a positive integer: "); scanf("%d", &num); // for loop terminates when num is less than count for(count = 1; count <= num; ++count) ( sum += count; ) printf("Sum = %d", sum); return 0; )
Výstup
Zadejte kladné celé číslo: 10 Součet = 55
Hodnota zadaná uživatelem je uložena v proměnné num. Předpokládejme, že uživatel zadal 10.
Počet je inicializován na 1 a testovací výraz je vyhodnocen. Protože testovací výraz count<=num(1 menší než nebo rovný 10) je pravdivý, provede se tělo forsmyčky a hodnota součtu se bude rovnat 1.
Poté ++countse provede příkaz aktualizace a počet se bude rovnat 2. Znovu se vyhodnotí testovací výraz. Protože 2 je také menší než 10, je testovací výraz vyhodnocen na true a forje provedeno tělo smyčky. Nyní se součet bude rovnat 3.
Tento proces pokračuje a součet se počítá, dokud počet nedosáhne 11.
Když je počet 11, testovací výraz se vyhodnotí na 0 (false) a smyčka se ukončí.
Poté se hodnota sumobrazovky vytiskne na obrazovku.
O whilesmyčce a do… whilesmyčce se dozvíme v dalším tutoriálu.








