# # $Id: 01-feladat.txt 1249 2010-10-14 23:01:02Z gertom $ # 1. Hozz létre egy olyan vector nevű tömb típust, amely egy háromdimenziós térbeli vektort reprezentál, egy N hosszúságú sztringek tárolására szolgáló karaktertömb típust, és egy külön típust 16 bites nemnegatív értékek tárolására. 2. Definiálj egy hetnapjai nevű felsorolástípust a hét napjainak tárolására, majd írasd ki a napok értékeit! Mi a különbség az előzőleg használt enum típusképzéshez képest? 3. A sizeof() segítségével írasd ki, hány bájtosak a C char, short, int, long, long long, float, double, long double típusai! 4. Írasd ki a 64 és 95 közé eső kódú karaktereket, valamint az 'a' és 'z' közé eső karakterek kódjait. 5. Mi a különbség a signed char és az unsigned char értékkészlete között? Írasd ki -128-tól 255-ig egy signed és egy unsigned char típusú változó számértékét! 6. Mi a különbség ugyanazon típus előjeles és előjeltelen verziója között? Deklarálj 6 változót (signed/unsigned, short/long/long long), 0 kezdőértékkel, és vonj ki belőlük egyet. Milyen értékeket kapsz? Add értékül a változóknak a legnagyobb előjelesen ábrázolható értéket (ez fele az előjeltelen maximális értéknek), és adj hozzá egyet. Most mik a változók értékei? 7. Készíts egy típust legfeljebb 20 karakter hosszúságú szó tárolására, majd olvass be biztonságosan két ilyen szót és fűzd őket egymás után egy harmadik sztringbe. Használd a string.h függvényeit! Írasd ki az eredmény első legfeljebb 20 karakterét. 8. Mi a különbség a float, double és long double pontossága között? Add hozzá az 1, 0.1, 0.01, 0.001, ... sorozat elemeit egy-egy ilyen változóhoz. Milyen értékeket kapsz lépésenként? 9. Mi a különbség a float, double és long double értékkészlete között? Szorozgasd egy-egy ilyen változó értékét 0.1-gyel, amíg 0 nem lesz mindhárom. Milyen értékeket kapsz lépésenként? 10. Írj egy programot, ami beolvas egy előjeltelen short int értéket, és nyolcas számrendszerbe átváltva írja ki. 11. Olvass be egy double és egy egész értéket, majd a valós értéket írasd ki az egészben megadott pontossággal. 12. Egy sor kiíratási formátuma: "nev: %s; pont: %d;". Olvasd be a kiírt számot úgy, ha tudod, hogy a kiírt sztring nem tartalmazhat pontosvesszőt. Ellenőrízd le, hogy az input sor valóban helyes-e. 13. Módosítsd úgy a programot, hogy az stdin, stdout, fscanf és fprintf függvényeket használja. 14. Módosítsd úgy a programot, hogy valódi fájlokat használjon. Hibaüzenettel és hibakóddal lépjen ki a program, ha valamelyik fájl megnyitása nem sikerült.