name als Case eingabe



  • Hi Leute , ich hab nen programm geschreiebn, funtz aber nicht

    ICH WILL DAS MAN NICHT EIN BUCHSTABE SONDERN EIN NAME eingben kann :-! 👎

    #include <iostream>
    #include <conio.h>
    #include <string>
    
    using namespace std;
    
    int main()
    {
       char auswahl;
       cout << "Name \n > ";
       cin >> auswahl;
       switch(auswahl)
       {
         case 'Timo':
         case 'e':
           cout << "Sie heisen Timo!";
           break;
    
         default:
    
       }
       getch();
    }
    


  • dann passt eben switch case nicht.
    mach eine if/else und stringvergleich.



  • 1. Du includierst zwar <string>, liest dann aber mit "cin >> auswahl" etwas in auswahl - einem char, einem einzelnen Zeichen ein. Ergo: char durch string ersetzen und am bestne cin durch:

    string auswahl;
    ...
    getline(cin, auswahl);
    

    um kein Problem mit Leerzeichen im Namen zu bekommen.

    2. switch mit Strings ist nicht möglich, da benötigst du ein if

    MfG SideWinder



  • 😉 so wilst du das bestimmt haben oder?

    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    #include <conio.h>
    #include <windows.h>
    
    char Buch[] = { "Timo" };
    char Buch2[] = { "Julian" };
    char Buch3[] = { "Patrick" };
    
    int main(int argc, char *argv[])
    {
    
    char Buchabfrage[6];
    
    printf("Wie heisst Du : ");
    scanf("%s",&Buchabfrage[0]);
    
    if((strcmp(Buch3, Buchabfrage)) == 0)
    {
    printf("\nLade daten...  \n\a");
    Sleep(3000);
    printf("\nName: Patrick Ratz \n");
    }
    else 
    {
    printf("");
    }
    
    if((strcmp(Buch2, Buchabfrage)) == 0)
    {
    printf("\nLade daten...  \n\a");
    Sleep(3000);
    printf("\nName: Julian Ratz  \n");
    }
    else 
    {
    printf("");
    }
    
    if((strcmp(Buch, Buchabfrage)) == 0)
    {
    printf("\nLade daten...  \n\a");
    Sleep(3000);
    printf("\n Name: Timo  =)  \n");
    }
    else 
    {
    printf("");
    }
    
    getch();
    return 0;
    }
    


  • Wenn er, wie du im ersten Posting erkennen kannst, C++ programmierst, will er es wohl kaum so haben.

    MfG SideWinder


Anmelden zum Antworten