"Programm hat einen Fehler verursacht" bei einem übungsprogramm :confused:



  • sorry, falsche abteilung!!! bitte verschieben!!!

    hallo!
    ich habe grade ein kleines programm geschrieben und das sieht so aus:

    #include <stdio.h>
    main ()
    {
    char a;
    int i , checkchar , checkint ;
    printf ("Bitte eine Zahl und einen Buchstaben eingeben und mit [Enter] bestaetigen\n");
    checkint = scanf ("%d\n" , i);
    fflush(stdin);
    checkchar = scanf ("%c\n" , a);
    if ((checkint && checkchar) ==1)
    {
    printf ("Eingabe korrekt!\n") ;
    }
    if ((checkint == 1) && (checkchar != 1));
    {
    printf ("Buchstabe nicht korrekt eingegeben\n");
    }
    if ((checkint != 1) && (checkchar ==1 ));
    {
    printf ("Zahl nicht korrekt eingegeben\n");
    }
    if ((checkint != 1) && (checkchar != 1));
    {
    printf ("Zahl und Buchstabe nicht korrekt eingegeben\n");
    }
    fflush (stdin);
    getchar ();
    return 0;
    }

    compiliert hab ichs, dann ausführen... die erste abfrage kommt, aber wenn ich eine zahl eintippe und enter drück kommt eine windows-fehlermeldung: "das programm hat einen fehler verursacht" oder so ähnlich. woran liegt das?

    gruß theAtheist



  • Weil du beispielsweise

    scanf("%d\n", i)
    

    statt

    scanf("%d\n", &i)
    

    geschrieben hast.



  • dankeschön! jetzt stürzt es nicht mehr ab!
    aber tun tuts immer noch nicht 😞

    gruß theAtheist



  • also inzwischen weiß ich auch, dass nach den if (blabla) kein semikolon stehen darf, es tut aber trotzdem nich 😞



  • und ich hab auch den letzten fehler gefunden!
    nach %d in der scanf funktion darf kein \n stehen! eigentlich logisch...
    endlich tuts

    n8,

    theAtheist


Anmelden zum Antworten