C-ben hogyan kell egy egész szót scannelni?
pl egy fájlban van ez a két szó : GSAGa
SGAGASDDS
És ezt a kettőt szeretném scannelni. Ezt a parancsot használtam : char c; c=getc(fr) de így csak az első betűt scannelte, nekem pedig az egész szó kell (illetve mind2).
Próbáltam rákeresni, de csak olyan programokat találtam amiben számomra nagyon sok dolog nem világos. Van ennek vmi egyszerű módja?
igen most már megvan, ezzel a parancsal :
while ((c = getc(fw)) != EOF)
Most viszont egy másik dologban kéne a segítség. A feladat az, hogy egy file-ban le kell szkennelni a mondatot, és bizonyos karaktereknél meg kiírni egy mondatot. Tehát pl a fájlban van hogy :
ASF%FS%SFA
Tehát pl ha A-betűt talál akkor kírja h "kutya" ha % -jelet a akkor "macska" . A teljes kiírás tehát így nézne ki: kutya macska macska kutya
Ezzel próbálkoztam:
while ((c = getc(fw)) != EOF)
if (c=='A') {printf("kutya");}
if (c=='%') {printf("macska");}
Ezt próbáltam mindehogyan variálni, de a legjobb eredmény is csak az volt, hogy kiírta ha pl "kutya macska" de aztán hiába fordult még elő többször az a karakter, nem írta ki mégegyszer.
Erre vmi megoldás?
A while utáni rész kapcsos zárójelek között van?
while(){
az ifes rész itt van
}
nos azt hiszem rájöttem miért nem megy...
a feladatban ugyanis úgy volt, hogy pl ha a szóban talál x-et vagy X-et ,akkor kiír vmit, és én ezt így írtam be:
if (c=='y'||'Y') {printf("Y\n");}
így viszont a 'vagy' miatt teljesen mást csinál, csomószor kíirja ugyan azt. Ha zárojelbe tettem (c==('y'||'Y')) akkor se csinálta jól, szóval külön ki kellett írnom... de gondolom erre is van vmi megoldás, hogy egybe lehessen írni ?
nah már erre is rájöttem :D
így kellett helyesen: if ((c=='y')||(c=='Y')) {blabla;}
na igen, ezt elfelejtetted leírni a korábbi kommentben.
if törzsében vagyokkal ( || ) logikai feltételeket választunk el, emiatt kell mindkétszer az 'egyenlő-e' (==) operátor
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!