VÝUKOVÝ MATERIÁL Identifikační údaje školy
Číslo projektu Název projektu Číslo a název šablony Autor Tematická oblast Číslo a název materiálu Anotace Vytvořeno Určeno pro
Přílohy
Vyšší odborná škola a Střední škola, Varnsdorf, příspěvková organizace Bratislavská 2166, 407 47 Varnsdorf, IČO: 18383874 www.vosassvdf.cz, tel. +420412372632 CZ.1.07/1.5.00/34.1076 Pro vzdělanější Šluknovsko 32 – Inovace a zkvalitnění výuky prostřednictvím ICT 0207 Mgr. Bc. Jan Škoda Programování VY_32_INOVACE_0207_0217 Knihovna <stdio.h>, <stdlib.h> a
Žák si upevní učivo o knihovnách <stdio.h>, <stdlib.h> a v programovacím jazyku C 22. 7. 2013 3. ročník oboru Informační technologie Bez příloh
Metodický list • Učitel: • • • •
Výklad s projekcí elektronického učebního materiálu. Demonstrace v reálném prostředí. Ukázka obecného postupu činností. Monitorování činnosti žáků.
• Žák: • Sleduje výkladovou projekci a demonstraci učitele. • Procvičuje na reálném prostředí softwaru.
c++ Knihovna <stdio.h>, <stdlib.h> a
Knihovna stdio.h • Knihovna stdio.h (z anglického standard input output, což je standardní vstup a výstup) je základní knihovna jazyka C/C++. • Tato knihovna se v céčku vkládá do hlavičky zdrojového kódu direktivou #include <stdio.h>
• Obdoba této knihovny v C++ je cstdio a vkládá se pomocí #include
Přehled funkcí Příkaz
Popis
printf
výstup v programu
scanf
vstup v programu
stdin
načtení dat ze souboru
stdout
vytvoření souboru s výsledky
stderr
chybový výstup
fopen
otevření souboru
fclose
zavření souboru
ferror
při chybě program vrací, že návratová hodnota se nerovná
Zdroj: Autor
Vstup a výstup • Příkazy scanf(), printf() • Řídící řetězec formátu: • formátové specifikace • začínají znakem %, • určují formát vstupu nebo výstupu,
• znakové posloupnosti • vypíší se tak, jak jsou zapsány.
Formátové specifikace (%) • • • • • • • • • •
c d U x X o ld, lu, lx, lX lf Lf s
znak int desítkově znaménkově int neznaménkově int šestnáctkově malým písmem int šestnáctkově velkým písmem int osmičkově číslo typu long nepoužívat pro printf() long double řetězec (nemá & u scanf()!)
Escape sekvence (konstanty uvozené znakem \) • • • • • • • • • •
\n \r \f \t \b \a \\ \’ \0 \“
nová řádka návrat na začátek řádky nová stránka tabulátor posun doleva pípnutí zpětné lomítko apostrof nulový znak (NUL) uvozovky
Knihovna stdlib.h • Převod řetězce na celé číslo: int atoi(char *s); • Vrací celočíselnou hodnotu obsahu řetězce. • Zkratka z Ascii TO Int. • Příklad:
char cislo[] = ″241″; int hodnota; hodnota = atoi(cislo);
Knihovna stdlib.h • Převod řetězce na dlouhé celé číslo: long atol(char *s); • Vrací celočíselnou hodnotu obsahu řetězce. • Zkratka z Ascii TO Long. • Příklad:
char cislo[] = ″241″; long hodnota; hodnota = atol(cislo);
Knihovna stdlib.h • Převod řetězce na racionální číslo: double atof(char *s); • Vrací hodnotu obsahu řetězce. Hodnota datového typu racionální číslo s dvojitou přesností. • Zkratka z Ascii TO Float.
• Příklad: char cislo[] = ″241.1″; double hodnota; hodnota = atof(cislo);
Knihovna ctype.h • Všechna makra pro testování tříd znaků jsou zapsány ve tvaru: istypznaku(znak); • Návratovou hodnotou je 0, pokud se nejedná o daný typ znaku, v opačném případě nenulová hodnota. • Všechna makra pro konverzi znaku jsou zapsány ve tvaru: totypznaku(znak); • Návratovou hodnotou je znak převedený na daný typ znaku.
Knihovna ctype.h Makro isalnum(z);
Kdy vrací nenulovou hodnotu
isalpha(z); isdigit(z); islower(z);
… malé nebo velké písmeno … číslice … malé písmeno
isprint(z); isspace(z); isupper(z);
… tisknutelný znak (včetně mezery) … mezera, tabulátor nebo konec řádku … velké písmeno
… číslice, malé nebo velké písmeno
isxdigit(z); … hexadecimální číslice Zdroj: Autor
Knihovna ctype.h Makro toupper(z);
Popis … převod na velké písmeno
tolower(z);
… převod na malé písmeno
Zdroj: Autor
Zdroje • BERAN, Martin. Učebnice Borland C: učebnice programování v Borland C 4. generace. Praha: BEN - technická literatura, 1995, 442 s. ISBN 80-238-0304-2. • HEROUT, Pavel. Učebnice jazyka C. 3. vyd. České Budějovice: Kopp, 1994, 269 s. ISBN 80-858-2821-9. • HEROUT, Pavel. Učebnice jazyka C: 2. díl. 1. vyd. České Budějovice: KOPP, 1995, 236 s. ISBN 80-858-2850-2. • SCHILDT, Herbert. Nauč se sám C. Překlad Jiří Grée, Adéla Gréeová. Praha: SoftPress, 2001, 623 s. ISBN 80-864-9713-5.