MastaZulu
Ensign
- Registriert
- Aug. 2002
- Beiträge
- 207
Hi,
hab folgendes Problem:
ich lese einen Text ein, bei dem Kleinbuchstaben klein bleiben sollen, Großbuchstaben werden zu Kleinbuchstaben, Sonderzeichen sollen gelöscht werden und Enter sowie Leerzeichen sollen zu Leerzeichen umgewandelt werden. Klappt auch ganz gut, bis auf die Enter/Leerzeichen-Ersetzung.
Wenn ich den Debugger laufen lassen, dann merke ich, dass er in die letzte "else if"-Anweisung bei Enter oder Leerzeichen gar nicht reinspringt, sondern direkt in die "else"-Anweisung. woran kann das liegen?
hab folgendes Problem:
ich lese einen Text ein, bei dem Kleinbuchstaben klein bleiben sollen, Großbuchstaben werden zu Kleinbuchstaben, Sonderzeichen sollen gelöscht werden und Enter sowie Leerzeichen sollen zu Leerzeichen umgewandelt werden. Klappt auch ganz gut, bis auf die Enter/Leerzeichen-Ersetzung.
Code:
while (eingabe_ende != 1)
{
text_zeichen = getchar();
text_eingabe[i] = text_zeichen;
if (text_eingabe[i] == '#')
eingabe_ende = 1;
text_konvertiert[i] = text_eingabe[i];
i++;
text_konvertiert[i+1] = '\0';
}
for (i = 0;text_konvertiert[j] != '#'; j++, i++)
{
if ((text_konvertiert[j] >= 'a' && text_konvertiert[j] <= 'z') ||
(text_konvertiert[j] >= '0' && text_konvertiert[j] <= '9') ||
(text_konvertiert[j] == '#'))
{
text[i] = text_konvertiert[j];
}
else if (text_konvertiert[j] >= 'A' && text_konvertiert[j] <= 'Z')
{
text[i] = text_konvertiert[j] + 'a' - 'A';
}
else if (text_konvertiert[j] == '\n' && text_konvertiert[j] == ' ')
{
text[i] = ' ';
}
else
{
text[i] = ' ';
i--;
}
}