Keresés


Toplista

Toplista
  • betöltés...

Magántanár kereső

Ha szívesen korrepetálnál, hozd létre magántanár profilodat itt.
Ha diák vagy és korrepetálásra van szükséged, akkor regisztrálj be és írd meg itt, hogy milyen tantárgyban!

Az alábbi C programban milyen szemantikai hibát találtok?

436
int leghosszabb(char szoveg[]) {
int i, szohossz = 0, maxszohossz = 0;
for (i = 1; szoveg[i] != '0'; ++i) {
if (szoveg[i] != ' ') {
++szohossz;
} else {
if (szohossz > maxszohossz) {
maxszohossz = szohossz;
}
szohossz = 0;
}
}
return szohossz > maxszohossz ? maxszohossz : szohossz;
}
Jelenleg 1 felhasználó nézi ezt a kérdést.
0
Felsőoktatás / Informatika

Válaszok

1
Hát, pl. miért 1-től indul az i, mikor az első karakter az a szoveg[0] helyen van? Vagy az is érdekes, hogy az i miért szoveg[i] != '0'-ig megy, mikor a string végét a \0 jelzi.
A return jól adja vissza, de felesleges ott is ellenőrizni, elég ha a maxszohossz-t adja vissza.
Ezeket érdemes megnézni.
0