B_PJC Programování v jazyce C

Vysoká škola finanční a správní
zima 2022
Rozsah
2/2. 16 hodin KS/semestr. 7 kr. Ukončení: zk.
Vyučující
Ing. Renata Janošcová, Ph.D. (cvičící)
doc. RNDr. Jan Lánský, Ph.D. (cvičící)
Garance
doc. RNDr. Jan Lánský, Ph.D.
Katedra informatiky a matematiky (FES, KIM) – Katedry – Vysoká škola finanční a správní
Kontaktní osoba: Ivana Plačková
Rozvrh seminárních/paralelních skupin
B_PJC/cAPH: St 12:15–12:59 E305, St 13:00–13:45 E305, J. Lánský
B_PJC/pAPH: St 10:30–11:14 E305, St 11:15–12:00 E305, J. Lánský
B_PJC/vAPH: So 1. 10. 9:45–11:15 E306, 11:30–13:00 E306, Pá 18. 11. 17:30–19:00 E306, 19:15–20:45 E306, Pá 2. 12. 14:00–15:30 E228, 15:45–17:15 E228, Pá 16. 12. 14:00–15:30 E306, 15:45–17:15 E306, R. Janošcová
Předpoklady
B_PRg Programování && B_UPg Úvod do programování
Podmínkou pro zakončení tohoto předmětu je ukončení předmětů B_PRg a B_UPg.
Základní znalost programování, ukazatelů a datových struktur.
Omezení zápisu do předmětu
Předmět je otevřen studentům libovolného oboru.
Cíle předmětu
Predmet se nejprve zameruje na zvladnuti syntaxe jazyka C, jeho odlisnost od jazyku C++ a C#. Nasledne se predmet zameruje na schopnost algoritmizace slozitejsich uloh s vyuzitim linearnich a stromovych datovych struktur.
Výstupy z učení
Na konci tohoto kurzu bude student schopen: 1) naprogramovat v jazyku C středně obtížnou úlohu využívající řídících konstrukcí, struktur, polí, ukazatelů a řetězců. 2) používat staticky a dynamicky alokovanou paměť. 3) pracovat se standardním vstupem a výstupem a se soubory. 4) pracovat v Microsoft Visual Studiu.
Osnova
  • 1. Překlad a spojování programu 2. Funkce, podmínky, cykly 3. Datové typy, operátory 4. Pole a ukazatele 5. Řetězce, parametry programu z příkazové řádky 6. Dynamická alokoace paměti 7. Práce se soubory 8. Problémy při spojování modulů 9. Vazby na OS, ladění programů 10. Dynamické datové struktury 11. Oblíbené chyby 12. Zopakovaní klíčových pasáží
Literatura
    povinná literatura
  • Jan Lánský: Programování v jazyce C. Distanční opora, VŠFS, Praha, 2010.
  • KERNIGHAM, Brian W. a Dennis M. RITCHIE. Programovací jazyk C. 2. vydání. Přeložil Zbyněk ŠÁVA. Brno: Computer Press, 2019. ISBN 978-80-251-4965-2
  • Virius, M.: Programování v C++ od základů k profesionálnímu použití, Praha: Grada Publishing, 2018, ISBN:978-80-271-0502-1
  • Miroslav Virius: Jazyky C a C++ : kompletní průvodce, 2011
  • Pavel Herout: Učebnice jazyka C. 1. díl, České Budějovice : Kopp, 6.vydání, 2009
  • Pavel Herout: Učebnice jazyka C. 2. díl, České Budějovice : Kopp, 6.vydání, 2009
    doporučená literatura
  • E. Moo: Accelerated C++ Practical Programming by Example Nicolai
  • Bjarne Stroustrup: The C++ Programming Language (3rd ed.)
  • Miroslav Virius: Programování v C++ (ČVUT 2001)
  • Miroslav Virius: Pasti a propasti jazyka C++
  • Scott Meyers: Effective C++ (2nd ed.), More Effective C++ Herb
  • Bruce Eckel: Myslíme v jazyku C++ (Thinkinkg in C++ 2nd ed.)
  • Miroslav Virius: Jazyky C a C++ : kompletní kapesní průvodce programátora, 2006
Výukové metody
Výuka probíhá formou přednášek a cvičení. Znalostí získané z přednášek se prakticky využívají při programování v Microsoft Visual Studiu. ; Minimální povinná účast na cvičeních/seminářích v prezenční formě studia je 75%, na řízených skupinových konzultacích v kombinované formě studia 50%.
Metody hodnocení
Na zisk zápočtu v prezenční formě studiu je třeba účast na cvičeních alespoň 75 % a odevzdat dva domácí úkoly. Na zisk zápočtu v kombinované formě studiu je třeba účast na tutoriálu a odevzdat 4 úkoly POT. Zkouška probíhá formou diskuze nad zdrojovými kódy v jazyku C v minimálním rozsahu 1000 řádků. Student zdrojové kódy samostatně vytvoří v rámci své domácí přípravy a donese je na termín zkoušky.
Navazující předměty
Informace učitele
Normy: ISO/IEC 9899: Programming languages - C (1999) ISO/IEC 14882, ANSI: Programming languages - C++ (1998, 2003).
Další komentáře
Předmět je dovoleno ukončit i mimo zkouškové období.
Předmět je zařazen také v obdobích zima 2007, zima 2008, léto 2009, zima 2009, zima 2010, léto 2011, zima 2011, léto 2012, zima 2012, zima 2013, zima 2014, zima 2015, zima 2016, zima 2017, zima 2018, zima 2019, zima 2020, zima 2021, zima 2023, zima 2024.