If-Funktion in C

Neue Frage »

Auf diesen Beitrag antworten »
Lea If-Funktion in C

Hallo ihr,
kleines Problemchen, aber ich weiß einfach nicht was ich falsch gemacht habe... wollt eigentl. nur ne einfache if-else-Fkt in C schreiben, und wenn man f eingibt, sollte der Text ausgegeben werden... völlig sinnfrei, nur zur Übung... (aber leider funktioniert das nicht mal!)

#include <stdio.h>
#include <stdlib.h>

int main()
{
printf("Zum Test bitte f eingeben, wenn Programm ausgeben soll: Juhu…!\n");
getchar();
if (getchar()=='f') printf("Juhu! Es funktioniert!\n");
else printf("Schade!\n");
system("PAUSE");
return 0;
}

Was hab ich falsch gemacht???
Lg Lea
 
Auf diesen Beitrag antworten »
Thomas

Welche Fehlermeldung gibt es?
Auf diesen Beitrag antworten »
Lea

Gar keine, das is ja das verwunderliche! Das Programm läuft, nur wenn ich f eingebe, wird die Schade-Meldung ausgegeben.... Das seltsame aber ist nun, wenn ich zwei f eingebe, also ff, dann kommt Juhu usw...

Ich bin echt verwirrt, vor alllem weils ja nur ne kleine if-Fkt is, ohne Verzweigung und alles... Kann das an evt. an meinem Schreibprogramm liegen - ich hab mir dev-cpp ausm Internet runtergezogen...

Lg Lea
Auf diesen Beitrag antworten »
Thomas

Das Problem ist, dass du zweimal die getchar()-Funktion aufrufst. Entweder, du lässt das vor dem "if" weg, oder du schreibst den ersten Aufruf in eine Variable und prüfst dann im "if" den Variablenwert.
 
 
Neue Frage »
Antworten »


Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »