Kleine Bustaben im Wort groß machen
-
Hallo ich soll eine function schreiben wo ich in einem Wort kleine Bustaben
in große bustaben umwandel. Und die umgewandelten Zahlen ausgebe.Beim compiliern kommt ein fehler: true undeclared first use in function.
islower gibt aber den wert true wenn bustabe klein und false wenn bustabe groß zurück.
was mache ich falsch ?`#include <stdio.h.> #include <ctype.h> int grossSchreiben(char* c){ int i=0; int counter = 0; while(*c++ != '\0'){ if(islower(*c++) == true){ *c++ = toupper(*c++); counter++; } i++; } return counter; } int main(){ char c; printf("Bitte geben Sie in Wort ein: "); scanf("%c",&c); int anzahl = grossSchreiben(&c); printf("Es wurden %i Wörer groß geschrieben"); system("Pause"); }
Kann mi riener Weiterhelfen ?
mfg
Incredible
-
wenn ich einfahc nur if(islower(*c++)) mache dann klappt es aber bei der antwort kommt raus ich habe 22240 Wörter groß geschrieben.
Ich habe Hallo eingegeben und da war nur 1 Wort groß#include <stdio.h.> #include <ctype.h> int grossSchreiben(char* c){ int i=0; int counter = 0; while(*c++ != '\0'){ if(islower(*c++)){ *c++ = toupper(*c++); counter++; } i++; } return counter; } int main(){ char c; printf("Bitte geben Sie in Wort ein: "); scanf("%c",&c); int anzahl = grossSchreiben(&c); printf("\nEs wurden %i Wörer gross geschrieben"); system("Pause"); }
-
Incredible schrieb:
while(*c++ != '\0'){ if(islower(*c++)){ *c++ = toupper(*c++); counter++; } i++; }
mööp
while(*c != '\0'){ if(islower(*c)){ *c = toupper(*c); counter++; } c++; i++; }
-
Incredible schrieb:
while(*[u]c++[/u] != '\0'){ if(islower(*[u]c++[/u])){ *[u]c++[/u] = toupper(*[u]c++[/u]);
falsches forum, würde ich sagen.