Forum: PC-Programmierung if Anwiesung mit Text


von Anfänger (Gast)


Lesenswert?

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;
}

von Peter (Gast)


Lesenswert?

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.

von Anfänger (Gast)


Lesenswert?

und was muss ich machen damit ich z.B. aus ein Wort " Test " abfragen 
kann.

von yalu (Gast)


Lesenswert?

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.

von Klaus (Gast)


Lesenswert?

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
Noch kein Account? Hier anmelden.