====== Základní řídicí struktury ====== ===== Větvení ===== Větvení kódu na základě vyhodnocení podmínky má základní tvar if ( podminka ) { prikaz1; } else { prikaz2; } nebo pouze provedení příkazu1 (nebo posloupnosti příkazů) if ( podminka ) { prikaz1; } Druhou možností větvení pro více případů (case) se používá přepínač ''switch'' switch( promenna ) { case 1: // vykonny kod, kdyz promenna == 1 case 2: // vykonny kod, kdyz promenna == 2 i 1 break; case 3: // vykonny kod, kdyz promenna == 3 (pouze) break; case 5...10: // vykonny kod, kdyz promenna je v rozsahu 5 az 10, obe hodnoty vcetne break; default: // pokud hodnota promenne neodpovida zadne podminca } ===== 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 }