- Apple iPhone Air - almacsutka
- Samsung Galaxy A33 5G - a három az majdnem öt
- Motorola Edge 50 Neo - az egyensúly gyengesége
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- OFFTOPIK: Earfun-lányok Sencsenben
- Bemutatkozott a Motorola vékonymobilja
- Milyen hagyományos (nem okos-) telefont vegyek?
- Android alkalmazások - szoftver kibeszélő topik
- Huawei Watch GT 5 Pro - egészség + stílus
- 175 fotó, amit a Vivo X300 és X300 Pro kameráival készítettem
Ú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!
- Sosem használt! (Cini)Minis Forum Ryzen AI 9 HX 370 AMD Radeon 890M 96 GB RAM 2 TB SSD 1 év garancia
- AKCIÓ! DELL PowerEdge R630 rack szerver - 2xE5-2660v4 (28c/56t, 2.0/3.2GHz), 96GB RAM, 4x1G, áfás
- Gamer PC-Számítógép! Csere-Beszámítás! I5 12400F / RTX 3060Ti / 32GB DDR4 / 512 M.2 SSD
- ÁRGARANCIA!Épített KomPhone Ryzen 7 5700X 16/32/64GB RAM RTX 3060 12GB GAMER PC termékbeszámítással
- HP EliteBook 850 G7 15.6 inch (256GB SSD, i5-10310U, 1.70GHz, 8GB DDR4) Sale.exe: Akció!
Állásajánlatok
Cég: NetGo.hu Kft.
Város: Gödöllő
Cég: Laptopműhely Bt.
Város: Budapest