Hirdetés
- Luck Dragon: Asszociációs játék. :)
- mefistofeles: Az elhízás nem akaratgyengeség!
- gban: Ingyen kellene, de tegnapra
- aquark: Zsebszámológépek
- eBay-es kütyük kis pénzért
- sziku69: Fűzzük össze a szavakat :)
- sziku69: Szólánc.
- bobalazs: i5 4690 + RX 460 HTPC
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Luck Dragon: MárkaLánc
Ú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!
- Samsung Galaxy A52 128GB, Kártyafüggetlen, 1 Év Garanciával
- Apple Watch Series 10 GPS+Cellular 46mm, Újszerű, 1 Év Garanciával
- Acer Nitro XV272UW2bmiiprx 2K / IPS / 240hz (081)
- Prémium minőségű HOFI üvegfóliák Tech Protect tokok és 20W Adapterek iPhone 13 14 15 16 17 szériához
- Acer Nitro KG272UG 2K / IPS / 120hz (080)
- 3DKRAFT.HU - 3D NYOMTATÁS - AZONNALI ÁRAJÁNLAT - GYORS KIVITELEZÉS - 510+ POZITÍV ÉRTÉKELÉS
- MSI 14 Modern C12M FHD IPS i7-1255U 10mag 16GB 512GB SSD Intel Iris XE Graphics Win11 Garancia
- Vállalom telefonok,tabletek javítását ,(szoftveres hibát is,frp lock-ot is)márkától fügetlenűl
- Apple iPhone 15 256GB,Átlagos,Adatkabel,12 hónap garanciával
- 243 - Lenovo Legion Pro 7 (16IAX10H) - Intel Core U9 275HX, RTX 5080
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Eleve 