[C/C++] 2. Fragen (scanf und if)

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von LuZi, 3. Oktober 2007 .

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen
  1. #1 3. Oktober 2007
    2. Fragen (scanf und if)

    Hejj Leutz. Ich bin bei C noch ziemlich unerfahren und da wollte ich euch mal fragen, wie ich es anschreibe, wenn ich bei scanf einen oder mehrere Buchstaben eingeben muss??

    bei Zahlen weiss ich es, da geht es mit %d aber was ist mit einen/mehreren Buchstaben??

    2. Frage:

    wie schreibe ich eine if-Bedingung nach dem Motto:

    Wenn Eingabe = a, dann printf("a"),
    Wenn Eingabe = b, dann printf("b"),
    Wenn Eingabe = c, dann printf("c"),
    Wenn Eingabe = d, dann printf("d"),
    Wenn Eingabe = alles andre, dann printf ("stand nicht zur Auswahl")

    so ungefähr?? wär geil wenn das einer schnell erkläörn könnte...
    vielen dank

    LuZi
     

  2. Anzeige
  3. #2 3. Oktober 2007
    AW: 2. Fragen (scanf und if)

    kurz vorweg: ich bin auch nicht so der profi

    ad1)

    Code:
    scanf("%c", &buchstabe);
    statt buchstabe kann jede beliebige variable stehn. c schreibt dann den eingegeben text in die variable nach dem beistrich. (& nicht vergessen)

    ad2)

    ich würde da kein if verwenden sonder eine switch-case abfrage

    Code:
    switch (Ausdruck)
    {
     case Marke1: Anweisungen
     break;
     case Marke2: Anweisungen
     break;
     default: Anweisungen
     break;
    }
    in deinem Fall:

    Code:
    switch (Eingabe) //wobei Eingabe die Variable ist in der dein eingegebener Buchstabe steht
    {
    case a: printf("...") 
     break;
    case b: printf("...")
     break;
    ...
    default: printf("stand nicht zur Auswahl")
     break;
    }

    mfg duddl
     
  4. #3 3. Oktober 2007
    AW: 2. Fragen (scanf und if)

    ein zeichen musste mit %c für char machen, musst halt die variable in die du den char wert schreibst auch als char deklarieren so kannst du mehrere zeichen eibgeben aber es wird immer nur das erste zeichen in die variable geschrieben! wenn du keine abfang funktion dazu machst!
    bei mehreren einzelnen zeichen würd ich nen char array nehmen oder allgemein. ein array!
    da kannst dann mehrere zeichen in die selbe variable (array) schreiben...
    oder bei ganzen zeicheketten nimmst du %s für string...
    damit kannst dann z.b. ganze sätze oder wörter einlesen!

    wie gesagt bei einem menü nimmt man generell die switch-case funktion, wenn du nun aber unbedingt if else haben möchtest dann musst du jeden zweig selbst erstellen also

    Code:
    if(Eingabe == "a") // musst immer sehen ob nur == a oder == 'a' oder == "a" kommt drauf an wie du eingabe deklariert hast
    {
    printf("a");
    }
    else if(Eingabe == "b)
    {
    printf("b");
    }
    ....
    else
    {
    printf("stand nicht zur Auswahl");
    }
    solche if-else funktionen und switch-case sind eigentlich das kleine 1*1 eines progammes/programmierers


    mfg FynnY
     
  5. #4 3. Oktober 2007
    AW: 2. Fragen (scanf und if)

    ich danke euch burschen!

    bw natürlich ;-)

    mfg LuZi
     

  6. Videos zum Thema
Die Seite wird geladen...