A C programozási nyelv II. Utasítások. A függvény.

Hasonló dokumentumok
A C programozási nyelv I. Bevezetés

A C programozási nyelv I. Bevezetés

A C programozási nyelv V. Struktúra Dinamikus memóriakezelés

A C# programozási nyelv alapjai

A C programozási nyelv IV. Deklaráció és definíció

C programozás. 6 óra Függvények, függvényszerű makrók, globális és

Bevezetés a C++ programozási nyelvbe

Programozás C- és Matlab nyelven C programozás kurzus BMEKOKAM603 Függvények. Dr. Bécsi Tamás 6. Előadás

Internet programozása. 3. előadás

A C programozási nyelv VI. Parancssori argumentumok File kezelés

Java programozási nyelv

Kivételkezelés a C++ nyelvben Bevezetés

Algoritmizálás + kódolás C++ nyelven és Pascalban

Gregorics Tibor Modularizált programok C++ nyelvi elemei 1

1. Egyszerű (primitív) típusok. 2. Referencia típusok

C programozás. 1 óra Bevezetés

Java II. I A Java programozási nyelv alapelemei

A C programozási nyelv III. Pointerek és tömbök.

Programozás alapjai C nyelv 4. gyakorlat. Mit tudunk már? Feltételes operátor (?:) Típus fogalma char, int, float, double

Függvények. Programozás I. Hatwágner F. Miklós november 16. Széchenyi István Egyetem, Gy r

Java II. I A Java programozási nyelv alapelemei

Alprogramok, paraméterátadás

A C programozási nyelv III. Pointerek és tömbök.

Programozás. (GKxB_INTM021) Dr. Hatwágner F. Miklós március 3. Széchenyi István Egyetem, Gy r

Mechatronika és mikroszámítógépek 2017/2018 I. félév. Bevezetés a C nyelvbe

Mit tudunk már? Programozás alapjai C nyelv 4. gyakorlat. Legnagyobb elem keresése. Feltételes operátor (?:) Legnagyobb elem keresése (3)

Programozás alapjai. (GKxB_INTM023) Dr. Hatwágner F. Miklós október 11. Széchenyi István Egyetem, Gy r

Informatika terméktervezőknek

Programozás BMEKOKAA146. Dr. Bécsi Tamás 3. előadás

Bevezetés a programozásba. 8. Előadás: Függvények 2.

Programozási nyelvek Python

Vezérlési szerkezetek

Eljárások és függvények

Programozás. (GKxB_INTM021) Dr. Hatwágner F. Miklós február 18. Széchenyi István Egyetem, Gy r

Komputeralgebra Rendszerek

PHP alapjai, bevezetés. Vincze Dávid Miskolci Egyetem, IIT

BASH script programozás II. Vezérlési szerkezetek

Webprogramozás szakkör

A programozás alapjai 1 Rekurzió

Óbudai Egyetem. C programozási nyelv

Programozás alapjai. 7. előadás

Járműfedélzeti rendszerek II. 2. előadás Dr. Bécsi Tamás

Függvények. Programozás alapjai C nyelv 7. gyakorlat. LNKO függvény. Függvények(2) LNKO függvény (2) LNKO függvény (3)

Programozás alapjai C nyelv 7. gyakorlat. Függvények. Függvények(2)

Programozás C nyelven FELÜLNÉZETBŐL elhullatott MORZSÁK. Sapientia EMTE

Stack Vezérlés szerkezet Adat 2.

Programozás BMEKOKAA146. Dr. Bécsi Tamás 5. előadás

Programozás I. 5. Előadás: Függvények

Operációs rendszerek gyak.

ALGORITMIKUS SZERKEZETEK ELÁGAZÁSOK, CIKLUSOK, FÜGGVÉNYEK

Programozás alapjai 8.Gy: Program struktúra

Programozási nyelvek JAVA EA+GY 1. gyakolat

Statikus adattagok. Statikus adattag inicializálása. Speciális adattagok és tagfüggvények. Általános Informatikai Tanszék

A programozás alapjai

Szelekció. Döntéshozatal

PHP gyorstalpaló, avagy a Hello World-től az űrlapellenőrzésig

Gregorics Tibor Tanácsok modularizált programok készítéséhez 1

Programozási nyelvek I. 5. előadás (Gregorics Tibor anyagának felhasználásával)

C programozási nyelv

Programozás C nyelven 5. ELŐADÁS. Sapientia EMTE

Mintavételes szabályozás mikrovezérlő segítségével

Operációs rendszerek. 11. gyakorlat. AWK - szintaxis, vezérlési szerkezetek UNIVERSITAS SCIENTIARUM SZEGEDIENSIS UNIVERSITY OF SZEGED

Számítástechnika I. BMEKOKAA152 BMEKOKAA119 Infokommunikáció I. BMEKOKAA606. Dr. Bécsi Tamás 3. előadás

Bevezetés a programozásba I 10. gyakorlat. C++: alprogramok deklarációja és paraméterátadása

Algoritmizálás és adatmodellezés tanítása 1. előadás

1. Bevezetés szeptember 9. BME Fizika Intézet. Szám. szim. labor ea. Tőke Csaba. Tudnivalók. feladat. Tematika. Moodle Házi feladatok

Occam 1. Készítette: Szabó Éva

Mérnöki programozás 7. Szerkesztette: dr. Vass Péter Tamás

AWK programozás, minták, vezérlési szerkezetek

/* Az iter függvény meghívása és a visszatérő érték átadása a gyok változóba */ gyok = iter( n, a, e ) ;

Programozás C nyelven (3. ELŐADÁS) Sapientia EMTE

S z á m í t ó g é p e s a l a p i s m e r e t e k

Java programozási nyelv 4. rész Osztályok II.

Adminisztrációs feladatok Strukturált programok A C programnyelv elemei

A verem (stack) A verem egy olyan struktúra, aminek a tetejéről kivehetünk egy (vagy sorban több) elemet. A verem felhasználása

Programozás alapjai 5. gyakorlat Vezérlési szerkezetek egymásba ágyazása

1. Jelölje meg az összes igaz állítást a következők közül!

Megoldások a mintavizsga kérdések a VIMIAC04 tárgy ellenőrzési technikák részéhez kapcsolódóan (2017. május)

A függvény kód szekvenciáját kapcsos zárójelek közt definiáljuk, a { } -ek közti részt a Bash héj kód blokknak (code block) nevezi.

Apple Swift kurzus 3. gyakorlat

file./script.sh > Bourne-Again shell script text executable << tartalmat néz >>

Matlab alapok. Baran Ágnes. Baran Ágnes Matlab alapok Elágazások, függvények 1 / 15

és az instanceof operátor

Haladó DBMS ismeretek 1

Kivételek, kivételkezelés a C++ nyelvben

Java VIII. Az interfacei. és az instanceof operátor. Az interfészről általában. Interfészek JAVA-ban. Krizsán Zoltán

Algoritmizálás + kódolás C++ nyelven és Pascalban

Programozás alapjai C nyelv 10. gyakorlat. Standard függvények. Union

Kezdő programozók hibái Azok a buktatók, amikről ha nem tudsz, napokat töprenghetsz hiába programozás-tanulás közben

2018, Funkcionális programozás

Informatika E FAKT , = ±

Eljárások, függvények

Fordító részei. Fordító részei. Kód visszafejtés. Izsó Tamás szeptember 29. Izsó Tamás Fordító részei / 1

AWK programozás, minták, vezérlési szerkezetek

A szemantikus elemzés helye. A szemantikus elemzés feladatai. A szemantikus elemzés feladatai. Deklarációk és láthatósági szabályok

Programozás alapjai II. (1. ea) C++

Programozás alapjai II. (1. ea) C++

Objektumorientált Programozás VI.

Memóriagazdálkodás. Kódgenerálás. Kódoptimalizálás

Programozási nyelvek II. JAVA EA+GY 1. gyakolat

Átírás:

A C programozási nyelv II. Utasítások. A függvény. Miskolci Egyetem Általános Informatikai Tanszék A C programozási nyelv II (Utasítások, fuggvények) CBEV2 / 1 Kifejezés utasítás Kifejezés utasítás, blokk kifejezés; Összetett utasítás Blokk { { utasítások deklarációk } utasítások } A C programozási nyelv II. (Utasítások, függvények) CBEV2 / 2 if Feltételes utasítás (kifejezés) utasítás; vagy if (kifejezés) utasítás1; else utasítás2; A C programozási nyelv II. (Utasítások, függvények) CBEV2 / 3 CBEV/ 1

Ciklusutasítások 1. Elöltesztelÿ, iteratív while (kifejezés) utasítás; Hátultesztelÿ, iteratív do utasítás while (kifejezés); A C programozási nyelv II. (Utasítások, függvények) CBEV2 / 4 Ciklusutasítások 2. Általános for ( k1; k2; k3) utasítás; jelentése: k1; while (k2) { utasítás; k3; } A C programozási nyelv II. (Utasítások, függvények) CBEV2 / 5 switch (kif) { case (ak1): u1; case (ak2): u2; case (akn): un; default: un+1; }; Többirányú elágazás 1. <-- ez nem kötelezÿ! A C programozási nyelv II. (Utasítások, függvények) CBEV2 / 6 CBEV/ 2

Többirányú elágazás 2. (Mÿködés) kiértékelÿdik a kif a program azon elsÿ case szerkezet utáni utasítással folytatódik, amelyben szereplÿ állandó kifejezés értéke egyenlÿ kif értékével. ha a fenti feltétel egy esetben sem teljesül, a default utáni utasítással folytatódik (ha van ilyen címke). minden egyéb esetben a switch utasítást követÿ utasítással folytatódik a program. A C programozási nyelv II. (Utasítások, függvények) CBEV2 / 7 Vezérlésátadás break; Befejezÿdik a break-et körülvevÿ legbelsÿ while, for,do vagy switch utasítás végrehajtása, és a vezérlés átadódik a következÿ utasításra. continue; A vezérlés a körülvevÿ legbelsÿ while, do vagy for utasítás ciklusvégére adódik át. A C programozási nyelv II. (Utasítások, függvények) CBEV2 / 8 Visszatérés függvényb l return; A függvény végrehajtása befejezÿdik, és a hívó függvényhez tér vissza a vezérlés. A függvény értéke definiálatlan. return kifejezés; Visszatérés a hívó függvényhez, a függvény értéke a kifejezés lesz. (Típuskonverzióval, ha szükséges.) A C programozási nyelv II. (Utasítások, függvények) CBEV2 / 9 CBEV/ 3

A függvény fogalma A függvény (mint minden programozási nyelvben) utasítások egy névvel azonosítható csoportja, amely megadott paramétereken képes m veleteteket végezni. A tipikus C nyelv program sok, viszonylag egyszer függvény összessége. A C programozási nyelv II. (Utasítások, függvények) CBEV2 / 10 Formája: Függvény definíció 1. típus név(formális paraméterlista) { lokális deklarációk utasítások } A C programozási nyelv II. (Utasítások, függvények) CBEV2 / 11 Függvény definíció 2. A formális paraméterlista típus azonosító vagy típus tömbnév[] párok, vesszÿvel elválasztva. (A fenti felsorolás nem teljes!) Ha nincs paraméter, a paraméterlista helyére a void alapszó írandó. A C programozási nyelv II. (Utasítások, függvények) CBEV2 / 12 CBEV/ 4

Függvény definíció 3. A visszatérési érték típusa lehet: típusnév típusnév* (pointer) struktúranév és struktúra pointer függvény pointer unió pointer void (nincs visszatérési érték) A visszatérési érték nem lehet tömb. A C programozási nyelv II. (Utasítások, függvények) CBEV2 / 13 Függvény deklaráció (prototípus) A függvényt a használata elÿtt deklarálni kell. Formája: típus név(formális paraméterlista); Megjegyzés ACnyelvettÿl enyhébb szabályokat ír elÿ, dea helyes programozási stílus elsajátítása érdekében fogadjuk el ezt a szigorúbb szabályozást. A C programozási nyelv II. (Utasítások, függvények) CBEV2 / 14 Függvény hívása név (aktuális paraméterlista) A függvényhívás állhat pontosvesszÿvel lezárva, (ekkor a visszaadott érték - ha volt - elvész) kifejezés részeként. Az aktuális paraméterlista kifejezések vesszÿvel elválasztott listája. A zárójelpár kiírása akkor is kötelezÿ, hanincs paraméterlista! A C programozási nyelv II. (Utasítások, függvények) CBEV2 / 15 CBEV/ 5

Paraméterátadási mechanizmus 1. Csak érték szerinti paraméterátadás! Folyamata: kiértékelÿdik az aktuális paraméter kifejezés a kifejezés értéke a formális paraméter típusára konvertálódik a szokásos típuskonverzió szabályai szerint a formális paraméter megkapja kezdÿértéknek ezt az értéket végrehajtódnak a függvény törzsében felsorolt utasítások A C programozási nyelv II. (Utasítások, függvények) CBEV2 / 16 Paraméterátadási mechanizmus 2. Következmények: A formális paraméterek a függvényre nézve lokális változók, amelyek az aktuális paraméter kifejezés értékével inicializálódnak. A formális paraméterek a függvényen belül kaphatnak más értéket is, de ennek az aktuális paraméterre semmi hatása nincs. Az aktuális paraméterek tetszÿleges (de konvertálható típusú) kifejezések lehetnek. A C programozási nyelv II. (Utasítások, függvények) CBEV2 / 17 CBEV/ 6