Informatika2-2013/Gyakorlat01
(Új oldal, tartalma: „== 1. gyakorlat == === C fordítás konzolban === ===== Első fordítás gcc-vel ===== Nyiss egy szövegszerkesztőt, és másold be egy új fájlba a "hello.c" kódj…”) |
|||
(egy szerkesztő egy közbeeső változata nincs mutatva) | |||
112. sor: | 112. sor: | ||
</c> | </c> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
<br/> | <br/> | ||
<br/> | <br/> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− |
A lap jelenlegi, 2013. február 19., 02:50-kori változata
Tartalomjegyzék |
1. gyakorlat
C fordítás konzolban
Első fordítás gcc-vel
Nyiss egy szövegszerkesztőt, és másold be egy új fájlba a "hello.c" kódját:
#include <stdio.h> int main() { int x = 2; printf("hello world! %d\n", x); return 0; }
Nyiss egy konzolt és menj abba a könyvtárba (cd paranccsal) ahová elmentetted a "hello.c"-t.
Fordítsd le, készíts "hello" nevű futtatható fájlt:
gcc -o hello hello.c
Futtasd le a kapott programot!
Második fordítás gcc-vel
Mostantól használjuk a gcc warning-kapcsolóit, hogy lássuk a kisebb hibákat, figyelmeztetéseket is!
gcc -W -Wall -o hello hello.c
Rontsd el a "hello.c" kódot a következő módokon, majd mindig mentsd el és fordítsd le újra (és a következő elrontás előtt mindig állítsd vissza a helyes verziót):
- törölsz egy pontosvesszőt a sor végéről
- a printf-es sorban x helyett valami más betűt írsz
- létrehozol egy y nevű egész típusú változót az x után, de nem használod a kódban
- kitörlöd az utolsó } -t
- törlöd a "return 0;" sort
- töröld a legelsõ #include sort
CodeBlocks használata
Használat
- A feladatokhoz hozzatok létre mindig egy új üres file-t (File / New / Empty file), ezt mindenképpen .c kiterjesztéssel mentsétek el pl: feladat1.c.
- Fordítani a Build / Build-el tudtok, vagy a megfelelõ ikonnal, a lefordított programot a Build / Run -al indíthatjátok, vagy egyszerûbben F9-el fordíthattok majd utána azonnal indíthatjátok is a programot.
CodeLite használata
Beállítások
- Indítsd el a CodeLite fejlesztői környezetet!
- Állítsd át az indentálást (tabulálást/beljebbezést) a Settings -> Global Editor Preferences menüpont alatt a General -> Indentaiton résznél hogy ne használjon tab karaktereket
- Hozz létre egy új Workspace-et és benne egy új projektet (mindenképp külön könyvtárban: Create the project under a separate directory legyen bepipálva), segítség itt az oldal vége felé
Használat
- Minden feladat megoldását új projektbe kell tenni, hogy a main() függvények ne ütközzenek (egy projekten belül nem lehet több belőle).
- A narancssárga az aktív projekt a workspace-en belül. Ha menüből kiválasztod a fordítást (Build -> Build project vagy F7 billentyű) akkor ez mindig az aktív projektet fogja lefordítani, ha épp másik file van megnyitva a szerkesztődben, akkor is! Ugyanígy a futtatásnál is (menüből Build -> Run vagy Ctrl-F7) az aktív projekt main() függvénye fog lefutni!
Feladatok
Minden feladatot új file-ba mentsd a CodeBlocks-ban (esetleg Codelite-ban új project-be)!
1. Feltételes print
Segítség
A következõ egy egyszerû feltétel, leteszteli hogy 'x' nulla vagy nem, majd kiírja a számot:
#include<stdio.h> int main(void) { int x = -5; if(x == 0){ printf("Nulla"); } else{ printf("Nem nulla"); } printf("A szam: %d \n\n", x); return 0; }
Egészítsd ki a következő kódot a megjegyzések helyén!
#include<stdio.h> int main(void) { /* x és y változók deklarálása, értékadás */ printf("X erteke: %d\n", x); printf("Y erteke: %d\n", y); printf("\n"); /* egy feltételes utasítással (if, else if, else) érd el hogy mindig igaz állítás kerüljön a képernyőre */ printf("%d nagyobb mint %d!\n", x, y); printf("%d nagyobb mint %d!\n", y, x); printf("%d ugyanannyi mint %d!\n", x, x); return 0; }