Hallo kann mir jemand sagen, was ich machen muss damit meine if Anweisung auf q schaltet und nicht nur bei Zahlen. #include <stdio.h> #include <stdlib.h> int iantwort; int main(int argc, char *argv[]) { printf ("Bitte auf Latein antworten!\n"); scanf("%i",&iantwort); if (iantwort == 'q') { printf ("Antwort!\n"); } system("PAUSE"); return 0; }
wie soll dann in eine int eine buchstabe kommen? das 'q' wird als zahl 113 umgewandelt, wenn iantwort 113 ist wird deine Bedingung auch wahr werden.
und was muss ich machen damit ich z.B. aus ein Wort " Test " abfragen kann.
1 | #include <stdio.h> |
2 | #include <string.h> |
3 | |
4 | int main(int argc, char *argv[]) |
5 | {
|
6 | char antwort[10]; |
7 | |
8 | printf ("Bitte auf Latein antworten!\n"); |
9 | |
10 | scanf("%s", antwort); // durch Whitespace begrenzten String einlesen |
11 | |
12 | if (strcmp(antwort, "Test") == 0) // Vergleich |
13 | {
|
14 | printf ("Antwort!\n"); |
15 | }
|
16 | return 0; |
17 | }
|
Anm.: Zum Lernen ist das so ok. Für ernsthafte Anwendungen sollte man Strings nicht mit scanf einlesen, da eine überlange Eingabe des Benutzers das Array antwort zum Überlaufen bringt. fgets ist, richtig angewandt, sicherer.
Du must verdammt nochmal ein C Tutorial lesen! Oder ein Buch, falls du weißt was das ist!!!!!!!^
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.