Buchstaben umwandeln --> auslesen aus Datei
-
Hi,
ich hab mir überlegt ein Programm zu schreiben, dass den 1. kleine buchstaben der nach einem '.' folgt in einen großen umzuwandeln.
Das Problem ist nicht das umwandeln sondern wie man von einem '.' genau auf den 1. Buchstaben kommt.
while(!feof(punkt)) { fscanf(punkt,"%s",tmp); if(tmp[x] == '.') { while(tmp[x] != '\0') { if(tmp[x] >= 'a' && tmp[x] <= 'z') { tmp[x]=tmp[x]-32; } x++; } }
Naja wenn ich das if mit dem . weglasse dann wandelt es einfach alle kleine Buchstaben in große um. So gibt es gar nichts aus.
Es kommt: "Bitte drücken Sie eine beliebige Taste".Wie gesagt mein Problem ist das ich von dem '.' auf dem 1. kleine buchstaben komme --> den dann umwandeln und einfach ganz normal die anderen buchstaben auslese.
Bsp:
hallo2323du muss zu hallo2323Du werden.Gruß
-
Guck dir nochmal die Reihenfolge der Schleifen und Bedingungen an. Denk mal darüber nach wie oft und mit welchem x wohl die Zeile 6 ausgeführt wird.
Apropos x: Anfangswert?
-
Du musst dir den Zustand merken ob gerade ein Punkt gefunden wurde.
int Punktgefunden = 0; int Zeichen; Schleife zum Zeichen einlesen { if ((Zeichen) == '.') Punktgefunden = 1; if (islower(Zeichen) && Punktgefunden) { Zeichen = toupper(Zeichen); Punktgefunden =0; // } Zeichen ausgeben }
Wobei %s zum einlesen von Texten ungeeignet ist. Dabei gehen dir die Leerzeichen (Whitespace) verloren.