- Honor 200 Pro - mobilportré
- Megérkezett a Google Pixel 7 és 7 Pro
- Samsung Galaxy Z Fold7 - ezt vártuk, de…
- Samsung Galaxy S25 Edge - a tegnap határán
- Lesz Xperia 10 VII, méghozzá újratervezett külsővel
- Xiaomi 14 - párátlanul jó lehetne
- Redmi Watch 5 - formás, de egyszerű
- Xiaomi 15 - kicsi telefon nagy energiával
- Samsung Galaxy S23 Ultra - non plus ultra
- MIUI / HyperOS topik
Új hozzászólás Aktív témák
-
Sk8erPeter
nagyúr
válasz
zserrbo #1984 üzenetére
Érdekes ez a feladat-meghatározás, ha így kezdődik: "Paraméterei két karakter tömb." - minek a paraméterei...? Ki lehet találni, hogy egy függvénynek, de az egész specifikáció elég gyengusz.
Akkor menjünk sorba a programodon:
main ()
ne szokj rá, hogy ezt használod, írd ki explicite a visszatérési értéket:
int main(){
/*...*/
return 0; /* ha nincs hiba*/
}int i;
char tomb1[i];
char tomb2[i];
Ez meg micsoda?Eleve i-nek nincs semmi kezdőértéke, hogy akarod így létrehozni i-vel a tömböt? Mekkora méretű lesz a tömb?
scanf ("%c",tomb1);
Egyetlen karaktert olvasol tomb1 0. indexe helyére...
Használhatnád pl. a getchar() függvényt EOF-ig, vagy ameddig meghatározod, hogy beolvassson (mit adjon meg a felhasználó, amivel jelzi, hogy vége a beadott karaktersorozatnak).Ezután van egy for ciklusod, amivel ki szeretnéd íratni tomb1-et, de a másolás nincs meg.
Valami ilyesminek kellene szerepelnie a for cikluson belül, persze ha már a többi része jó:
for(i=0;i<strlen(tomb1) && i<strlen(tomb2); i++) /* csak hogy ne indexeljen túl, ha esetleg a tomb1 kisebb méretű tomb2-nél, persze ennek ellenőrzésére más megoldás is van */
{
if(tomb2[i] != '\t' || tomb2[i] != ' ') /* ha nem tabulátor és nem szóköz */
tomb1[i]=tomb2[i];
}
A ciklus végén zárd le lezáró 0-val a tomb1-et.Ezenkívül ennek az egésznek szerintem külön függvényben kellene lennie, ami két karaktertömböt kap paraméterként, visszatérési értéke pedig az átmásolt karakterek száma. A feladat legalábbis ezt mondja...
"Igaz a feladat nem írja, hogy töltsem fel a karakter tömböt"
És akkor mégis mit akarnál átmásolni, ha nincs feltöltve?system ("PAUSE");
Ezt felejtsd el! Nem platformfüggetlen, felesleges rendszerhívás.
Használd helyette pl. a getchar()-t...
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Garanciális Gamer Számítógép, PC (RTX 3060Ti, I5-10400, 16GB Ram, SSD) Beszámítás! Posta ok! (37)
- Garanciális Gamer Számítógép, PC (GTX 1070 8GB, I3-10105, 16GB Ram, SSD) Beszámítás! Posta ok! (36)
- SAPPHIRE Radeon RX 6650 XT PULSE 8GB + 1 év gari
- Bomba ár! Lenovo ThinkPad T420 - i5-2GEN I 4GB I 320GB I 14" HD I Cam I W10 I Garancia!
- Bomba ár! HP ProBook 645 G1 - AMD A6-5350M I 8GB I 500GB I 14" HD I Cam I W10 I Garancia!
- ÁRGARANCIA!Épített KomPhone i5 10400F 16/32GB RAM RX 7600 8GB GAMER PC termékbeszámítással
- Csere-Beszámítás! Garancia! Steam Deck OLED 1TB Kézikonzol!
- Bomba ár! HP Pavilion 15 - i5-8265U I 8GB I 256SSD + 1TB I Nvidia I 15,6" FHD I Cam I W11 I Gari!
- GYÖNYÖRŰ iPhone 13 mini 256GB Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS3180
- Huawei Nova 9 SE 128GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: FOTC
Város: Budapest