{{indexmenu_n>5600}} ====== Základní řídicí struktury ====== ===== Větvení ===== Větvení kódu na základě vyhodnocení podmínky má základní tvar if ( podmínka ) { příkaz1; } else { příkaz2; } nebo pouze provedení příkazu1 (nebo posloupnosti příkazů) if ( podmínka ) { příkaz1; } ===== Cykly ===== Základní cyklem je příkaz ''for'', který se skládá ze tří částí a bloku příkazů, které se mají provést. Cyklus je řízení hodnotou řídicí proměnné, která je na začátku incializována. Cyklus je opakován dokud platí podmínka pro řídicí proměnnou (např. je menší než zvolená hodnota. Na konci každého cyklu pak provádím změnu hodnoty řídicí proměnné. Těmto třem částem odpovídá i syntax příkazu ''for'': for ( inicializace řídicích proměnné; podmínka spuštění cyklu; změna hodnoty řídicí proměnné) { příkaz; nebo posloupnost příkazů } Ve standardu [[https://en.wikipedia.org/wiki/C99|C99]] je možné deklarovat proměnnou přímo při inicializaci a použití ''for'' cyklu může například vypadat: for (int i = 0; i < 10; ++i) { printf("Printing this text for the %d time\n", i + 1); } Další možností cyklu je použití příkazu ''while'', u kterého je nutné deklaraci a změnu hodnoty řídicí proměnné realizovat vně a uvnitř bloku cyklu. Základní tvar ''while'' cyklu je while ( podmínka ) { tělo cyklu; } a výše uvedný příklad může vypadat například int i = 1; while ( i <= 10 ) { printf("Printing this text for the %d time\n", i); i = i + 1; } Těla cyklu ''for'' a ''while'' nemusejí proběhnout ani jednou, neboť podmínka je testována před provedením těla cyklu. Naproti tomu cyklus typu ''do-while'' proběhne vždy alespoň jednou, neboť podmínka opakování cyklu je testována po provedení těla cyklu. Základní tvar ''do-while'' cyklu je do { tělo cyklu; } while ( podmínka ); A výše uvedený příklad může například vypadat int i = 0; do { i = i + 1; printf("Printing this text for the %d time\n", i); } while ( i < 10 ); V těle cyklu lze použít příkazy ''continue'' a ''break''. Příkaz ''continue'' ukončí vykonávání aktuálního cyklu a vyvolá vyhodnocení podmínky opakování. Naproti tomu ''break'' ukončuje provádění cyklu podmínky opakování a program pokračuje dalším příkazem po cyklu. ===== Funkce ===== Základním "stavebním blokem" Cčkových programů jsou funkce. Základní tvar funkce je návratova_hodnota jméno_funkce(parametry) { tělo funkce jako posloupnost příkazu return; //předpis návratu funkce případně s návratovou hodnotou }