Informatika3-2024/Gyakorlat3
(Új oldal, tartalma: „== Feladatok == Minden feladathoz nyiss új projektet IDE-ben vagy írd új file-ba ha parancssorból dolgozol! ==== C string ==== Elemezzük ez a kis kódot: <c> #i…”) |
(→Zárójelezés) |
||
52. sor: | 52. sor: | ||
==== Zárójelezés ==== | ==== Zárójelezés ==== | ||
− | Írjunk C függvényt, mely kap egy C string-et és egy '''n''' pozitív egész számot. A string-bõl törli '''n''' mélységig a | + | Írjunk C függvényt, mely kap egy C string-et és egy '''n''' pozitív egész számot. A string-bõl törli '''n''' mélységig a zárójeleket. Feltételezhetjük, hogy nincsenek pár nélküli zárójelek és zárójelek nem metszenek egymásba, de több zárójel lehetséges. Például |
((Volt egyszer) egy) (kis)kutya. | ((Volt egyszer) egy) (kis)kutya. | ||
Ebbõl az 1 mélységig törlés a következõt eredményezné: | Ebbõl az 1 mélységig törlés a következõt eredményezné: |
A lap 2024. február 29., 08:56-kori változata
Tartalomjegyzék |
Feladatok
Minden feladathoz nyiss új projektet IDE-ben vagy írd új file-ba ha parancssorból dolgozol!
C string
Elemezzük ez a kis kódot:
#include <stdio.h> int main() { char str[] = "puppy"; printf("The word is %s.\n", str); return 0; }
Próbáljuk meg kiírni az str tömb elemeit egyesével mintha egész számok lennének (%d printf-ben)! Az str-nek 6 eleme van (annak ellenére, hogy csak 5 karakterbõl áll).
Beolvasni is tudunk string-et, de ehhez egy elõre létrehozott kellõen nagy char tömb kell:
char str[100]; scanf("%s", str);
Tehát a string-ek valójában karakter tömbök, melyek végén egy úgynevezett lezáró nulla karakter áll. Ennek a karakter kódja '\0'. Egy szokásos string bejáró for ciklus:
for(i = 0; str[i] != '\0'; i++) { printf("%c", str[i]); }
A következõ feladatokban ne használjunk könyvtári függvényeket, még ha ismerjük is õket. Csak az stdio.h-t használjuk.
Karakter számoló
Írjunk függvényt mely kap egy C string-et és egy karaktert (char) és visszaadja, hogy az adott karakter hányszor szerepel a string-ben.
Leggyakoribb karakter
Írjunk függvényt mely kap egy C string-et és visszaadja az abban található leggyakoribb karaktert.
Súlypont
Írjunk C programot, mely beolvas a felhasználótól tetszõleges számú, de maximum 10 három dimenziós koordinátát és kiszámolja a súlypontjukat (koordináták átlaga). A beolvasás megáll, ha a (0,0,0) pontot adjuk meg (és ez a pont nem lesz része a számolásnak).
Karakter törlõ
Írjunk C függvényt, mely kap két C string-et és az elsõbõl törli a 2.-ban elõforduló összes karaktert. Például a "kiskutya", "ky" bementre "isuta"-ra változtatja az eredeti 1. string-et.
Zárójelezés
Írjunk C függvényt, mely kap egy C string-et és egy n pozitív egész számot. A string-bõl törli n mélységig a zárójeleket. Feltételezhetjük, hogy nincsenek pár nélküli zárójelek és zárójelek nem metszenek egymásba, de több zárójel lehetséges. Például
((Volt egyszer) egy) (kis)kutya.
Ebbõl az 1 mélységig törlés a következõt eredményezné:
(Volt egyszer) egy kiskutya.
A 2 mélységi:
Volt egyszer egy kiskutya.