Základní pojmy v jazyce C

Slides:



Advertisements
Podobné prezentace
A1PRG - Programování – Seminář Ing. Michal Typová konverze, oblast platnosti, paměťové třídy 9 Verze
Advertisements

Základy ukládání dat v počítači
Standardní knihovní funkce pro práci s textovými řetězci
VISUAL BASIC Práce s řetězci Použitá literatura: Kvoch: Visual Basic 4.
Programování v C jazyku - SEMINÁŘ
Programování funkcí v Excelu
Standardní knihovní funkce: matematika a datum a čas
Programování 2 Cvičení 5.
Základy jazyka C.
HYPERTEXT PREPROCESSOR. JAZYK PHP. Jazyk PHP (Hypertext PreProcessor) je intepretovaný jazyk určený pro web. Je celkem jednoduchý, snadno přenositelný.
Aplikační a programové vybavení
Jazyk VHDL Martin Štěpánek
Prezentace a vysvětlení programového prostředí NXC
Aplikační a programové vybavení
Algoritmy I Cvičení č. 2. Cíl hodiny Datové typy a přetypování (int, float, double, bool, char, long, short) Konstanty – Celočíselné Desítkové – 15, 0,
Algoritmy I Cvičení č. 1.
Programování v Pascalu Přednáška 2
Preprocess Úvod do tvorby funkcí Princip preprocesoringu Direktivy preprocesoru Podmíněný překlad Základy tvorby funkcí Zjednodušený popis principu předávaní.
Cvičení 2 Proměnné(jednoduché a složené) a konstanty První program Zápis výrazů.
Programování v C++ Cvičení.
Algoritmizace a programování
Druhé cvičení Vytváření identifikátorů Datové typy
J a v a Začínáme programovat Lucie Žoltá. Odkazy - oficiální stránky (překladače, help, metody, vývojové prostředí NetBeans,...)
Operátory (1. část) 3 A1PRG - Programování – Seminář
PHP PHP – základy syntaxe (část 1) - 03 Mgr. Josef Nožička IKT PHP
Datové typy 6 A1PRG - Programování – Seminář
A1PRG - Programování – Seminář Ing. Michal Standardní knihovní funkce pro práci se soubory 13 Verze
OSNOVA: a) Řetězce v C b) Funkce stdio.h pro řetězce c) Funkce string.h pro řetězce d) Příklad Jiří Šebesta Ústav radioelektroniky, FEKT VUT v Brně Počítače.
ZÁKLADNÍ DATOVÉ TYPY.
Jednoduché datové typy
A1PRG - Programování – Seminář Ing. Michal Operátory (2. část) 4 Verze
AVR Assembler Symboly Návěští
Základy číslicové techniky
Základy číslicové techniky
Gramatiky a jazyky Přednáška z předmětu Řízení v komplexních systémech
DEKLARACE PROMĚNNÝCH A KONSTANT
A1PRG - Programování – Seminář Ing. Michal Ukazatele a pole 10 Verze
Cvičení.
Vstupy a výstupy znaků a) Terminálový vstup a výstup ( getchar(), putchar() ) Přečtěte znak pomocí systémové funkce getchar() a vypište ho pomocí putchar().
Programovací jazyk PASCAL
A1PRG - Programování – Seminář Ing. Michal Standardní knihovní funkce pro vstup a výstup 12 Verze
Příklady v jazyku C – část 2
Napište program v C pro výpočet plochy obdélníka se stranami A=3 a B=2. Výsledek vytiskněte s patřičným komentářem na obrazovku formátovým příkazem printf.
A1PRG - Programování – Seminář Ing. Michal Řízení běhu programu 5 Verze
Základy psaní textu Interpunkční znaménka tečka(.), čárka(,)
STRING A UKAZATELE. Co to je řetězec? Řetězec v Javě je samostatný objekt. Je konstantní, co znamená, že jednou vytvořený řetězec nelze změnit. Chceme-li.
Příklady v jazyku C – část 1. Výstupy pomocí printf. printf(" Tisk textu \n v apostrofech \n ") ; p=10; printf("%d\n", p) ; /* tisk konstanty */ printf("Tisk.
Příklady v jazyku C – část 8. Napište program, který inicializuje 2-rozměrné pole uživatele (5 řádků, 2 sloupce) a naplní ho hodnotami (první sloupec.
Soubory BI-PA1 Programování a algoritmizace 1, ZS Katedra teoretické informatiky © Miroslav Balík Fakulta informačních technologií České vysoké.
ZÁKLADNÍ POJMY. ZDROJOVÝ TEXT PROGRAMU Tvoří: klíčová slova komentáře identifikátory.
Příklady v jazyku C – část 2
Příklady v jazyku C – část 2
Počítače a programování 1 2.přednáška. Základní lexikální struktura programu Program v jazyce Java je tvořen symboly a oddělovači Program Java je psán.
Číselné soustavy VII ASCII kódování Jana Bobčíková.
Úvod do programování2 Vyučující: Mgr. Vítězslav Jersák Web: xjv.webnode.cz.
HYPERTEXT PREPROCESSOR. JAZYK PHP. VYUŽITÍ JAZYKA Programování dynamických internetových stránek a webových aplikací vytvoření šablony webu kniha návštěv.
Programování KONSTANTY, ČTENÍ PO JEDNOM ZNAKU GETCHAR() FORMÁTOVANÝ VÝSTUP POMOCÍ PRINTF, VÝVOJOVÉ DIAGRAMY, CYKLY.
Reprezentace dat v počítači. základní pojmy  BIT označení b nejmenší jednotka informace v paměti počítače název vznikl z angl. BINARY DIGIT (dvojkové.
Programování ÚVOD, PROMĚNNÉ, OPERÁTORY A PODMÍNĚNÝ PŘÍKAZ ERIK KRÁL.
Vícerozměrná pole (1) Jazyk C povoluje, aby pole mělo více rozměrů (dimenzí) než jeden Z vícerozměrných polí bývá nejčastěji použí-váno pole dvourozměrné.
Algoritmizace a programování
Výukový materiál zpracován v rámci projektu
Výukový materiál zpracován v rámci projektu
Výukový materiál zpracován v rámci projektu
Programovací jazyk C Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Jitka Vlčková. Dostupné z Metodického portálu ISSN.
Ukládání dat v paměti počítače
Funkce výstupu (2) Funkce printf: deklarována v: stdio.h
Řetězce (24) Funkce strchr: deklarována v: string.h
Opakování ze 3. cvičení deklarace proměnných výpis na monitor (výstup)
Proměnné (1) Proměnná: Definice proměnných:
Transkript prezentace:

Základní pojmy v jazyce C Verze 2009.02 Základní pojmy v jazyce C 2 A1PRG - Programování - seminář Ing. Michal Heczko heczko@fai.utb.cz

Agenda Identifikátory Klíčová slova Komentáře Konstanty a proměnné Řídicí sekvence

Identifikátory Jména funkcí, proměnných, konstant, ... Důležité: jazyk C je case-sensitive, tj. je třeba dávat pozor na malá a velká písmena Vysvětlení IDENTIFIKATOR ≠ identifikator ≠ Identifikator

Pravidla pro tvorbu identifikátorů Skládají se z písmen, číslic nebo podtržítka Dle normy ANSI max. 31 znaků Nesmí začínat číslicí Mohou obsahovat pouze znaky bez diakritiky Nesmí obsahovat mezery Nesmí se shodovat s klíčovým slovem (více dále)

Klíčová slova Mají v jazyce C speciální význam a nelze je používat jako uživatelem definované identifikátory (např. jména funkcí, proměnných, konstant atd.) Zapisují se vždy malými písmeny

Klíčová slova auto double int struct break else long switch case enum register typedef char extern return union const float short unsigned continue for signed void default goto sizeof volatile do if static while

Komentáře Jsou důležitou částí zdrojového kódu Slouží k snadnější orientaci v programu Vhodné průběžné psaní komentářů Mohou obsahovat znaky národní abecedy Lze je umístit do libovolné části zdrojového kódu (při zpracování jsou odstraněny preprocesorem)

Komentáře 2 typy komentářů: Jednořádkové komentáře: Víceřádkové komentáře: Uvozují se znaky: /* pro začátek komentáře */ pro konec komentáře Jednořádkové komentáře: Uvozují se znaky // na začátku řádku

Komentáře Příklad: #include <stdio.h> #include <conio.h>   int main(void) { int x = 5; int y = 6; printf(”Výsledek: %d”,x*y); getch(); return 0; }

Komentáře Příklad: /* Popis: Program pro sečtení dvou čísel Autor: Michal Heczko */ #include <stdio.h> #include <conio.h> … …

Komentáře … … int main(void) { // definice proměnných int x = 5; int y = 6; // výpis součinu printf(”Výsledek: %d”,x*y); /* čeká na ukončení programu */ getch(); return 0; }

Konstanty a proměnné Proměnná Konstanta datový objekt, jehož hodnota se v průběhu programu může měnit Konstanta datový objekt, jehož hodnota v průběhu programu nelze měnit

Proměnná Datový objekt, jehož hodnota se v průběhu programu může měnit Obecný zápis: datovýtyp jméno; datovýtyp jméno = hodnota; Příklad: int i = 2; // deklarace proměnné s výchozí hodnotou int i; // deklarace proměnné i = 2; // uložení čísla 2 do prom. i

Datové typy Datový typ Velikost [b] Popis char 8 Znak short 16 Krátké celé číslo int 16/32 Celé číslo long 32 Dlouhé celé číslo float Reálné číslo double 64 Reálné číslo s dvojitou přesnosti long double 80 Velmi dlouhé reálné číslo

Datové typy Klíčové slovo Popis signed Uvádí se před datovým typem. Znamená se znaménkem. Výchozí, pokud není uvedeno. unsigned Uvádí se před datovým typem. Znamená bez znaménka.

Konstanta Datový objekt, jehož hodnota se v průběhu programu nemění Pro definici konstant používáme direktivu #define Obecný zápis: #define jméno hodnota Příklad: #define POCET 2 #define PI 3.14

Rozdělení konstant Celočíselné Reálné Znakové Řetězcové

Celočíselné konstanty 3 typy: Desítkové – posloupnost číslic, z nichž první nesmí být 0 Osmičkové (oktalové) – číslo 0 následované posloupností osmičkových číslic Šestnáctkové (hexadecimální) – číslo 0 následované znakem x nebo X posloupností šestnáctkových číslic (0 – 9, a – f, A – F)

Celočíselné konstanty Desítkové #define MINIMUM 8000 Osmičkové (oktalové) #define MINIMUM 017500 Šestnáctkové (hexadecimální) #define MINIMUM 0x1f40

Celočíselné konstanty U datového typu long znak L nebo l na konci (doporučuje se pouze velké, možná záměna s 1). U nezáporného typu znak U nebo u na konci. Př.: #define MINIMUM 8000LU

Reálné konstanty 2 způsoby zápisu: Základní datový typ: double Přímý tvar Semilogaritmický tvar Základní datový typ: double Přípony: Pro float … f nebo F Pro long … l nebo L

Reálné konstanty Přímý tvar #define MINIMUM 2.1 #define PI 3.14 Semilogaritmický tvar #define MAXIMUM 5e32 #define HODNOTA -3e32

Znakové konstanty Jeden znak dané kódové tabulky (nejčastěji ASCII) Znak je uzavřen mezi 2 apostrofy

ASCII tabulka Kódování znaků ve VT American Standard Code for Information Interchange Vychází z ní většina standardů pro kódování textu v euro-americké zóně V základu 7-bitový (128 platných znaků). 8-bitové rozšíření pro znaky národních abeced

ASCII tabulka tisknutelné znaky: řídící (netisknutelné) kódy: písmena, číslice, jiné znaky (závorky, matematické znaky (+-*/% …), interpunkční znaménka (,.:; …), speciální znaky(@$~ …)) řídící (netisknutelné) kódy: původně určeny pro řízení periferních zařízení (např. tiskárny nebo dálnopisu).

ASCII TABULKA

Znakové konstanty Způsoby zápisu: ‘\ddd’ , kde ddd je osmičkové číslo odpovídající kódu znaku ‘\xHH’ nebo ‘\XHH’, kde hh je šestnáctkové číslo odpovídající kódu znaku ‘z’, kde z je znak dané kódové tabulky ‘\e’, kde e je znak odpovídající tzv. escape sekvenci (neboli řídící sekvence)

Znakové konstanty Sekvence Hodnota Význam \n 0x0A Nový řádek \r 0x0D Návrat na začátek řádku \f 0x0C Nová stránka \t 0x09 Tabulátor \b 0x08 Posun doleva \a 0x07 Písknutí \\ 0x5C Zpětné lomítko \’ 0x2C Apostrof \0 0x00 Nulový znak

Řetězcové konstanty Ohraničené uvozovkami Možno použít všechny způsoby zápisu znakových konstant Možno použít znaky národní abecedy Př.: #define JMENO “Michal“ #define HLAVNI_MESTO “Praha“ Sekvence Hodnota Význam \“ Uvozovka.

Příklad ekvivalentních zápisů Řetězcové konstanty Zřetězování dlouhých řetězců oddělených mezerami, tabulátory nebo novými řádkami Příklad ekvivalentních zápisů #define MUJTEXT “Velmi dlouhý řetězec“ #define MUJTEXT “Velmi “ “dlouhý “ “řetězec“

Terminálový vstup a výstup Výpis na terminál: Obecný zápis: printf(řetězec, proměnná1,…,proměnnáN); Vstup z terminálu: scanf(řetězec, &proměnná1, …, &proměnnáN);

Terminálový vstup a výstup Řídící řetězec formátu Uvozuje se znakem %, za kterým následují další znaky dle následující tabulky: Znak řídícího řetězce c Znak d Číslo int, desítkové znaménkové u Číslo int, desítkové neznaménkové x Číslo int, šestnáctkové malými písmeny X Číslo int, šestnáctkové velkými písmeny o Číslo int, osmičkové

Terminálový vstup a výstup Znak řídícího řetězce printf scanf ld Číslo long, desítkové znaménkové f Číslo float lf Číslo double s řetězec

Terminálový vstup a výstup Příklady: printf(“Znak %c ma ASCII kod %d (%XH)\n“,’*’, ’*’, ’*’); printf(“Je přesně %2d:%2d\n“,hodiny, minuty); printf(“Hodnota čísla PI je %4.2f\n“,PI); printf(“Zadejte libovolne desetinne cislo\n“); scanf(“%f“,&x); printf(“Zadejte 2 cela cisla\n“); scanf(“%d %d“,&a,&b);

A1PRG-s 02. Základní pojmy Děkuji za pozornost Ing. Michal Heczko heczko@fai.utb.cz 218/U3 Prezentace k dispozici na http://vyuka.fai.utb.cz