/* ÜBUNG 6, AUFGABE 3 */ #include /* Makros und Deklarationen für Standard Ein-/Ausgabe */ int main(int argc, char *argv[]) /* Hauptprogramm main, immer gleich */ { int zahl1; /* Ganzzahl-Variable */ int zahl2; /* Ganzzahl-Variable */ int gelesen; /* Ganzzahl-Variable */ char zeichen; /* Zeichen-Variable */ printf("Bitte geben Sie die erste Zahl ein: "); /* Eingabeaufforderung ausgeben */ gelesen = scanf("%d", &zahl1); /* Zahl lesen und in der Speicherstelle von "zahl1" speichern, */ /* Anzahl gelesener Werte in "gelesen" merken. */ if(gelesen != 1) /* Ist die Anzahl gelesener Variablen ungleich 1? */ { printf("Sie haben leider keine Zahl eingegeben!\n"); /* Meldung ausgeben */ return 1; /* Programm mit Fehlercode beenden */ } printf("Bitte geben Sie die zweite Zahl ein: "); /* Eingabeaufforderung ausgeben */ gelesen = scanf("%d", &zahl2); /* Zahl lesen und in der Speicherstelle von "zahl2" speichern, */ /* Anzahl gelesener Werte in "gelesen" merken. */ if(gelesen != 1) /* Ist die Anzahl gelesener Variablen ungleich 1? */ { printf("Sie haben leider keine Zahl eingegeben!\n"); /* Meldung ausgeben */ return 1; /* Programm mit Fehlercode beenden */ } printf("Bitte geben Sie ein Zeichen aus der Menge { + - * / } ein: "); /* Eingabeaufforderung ausgeben */ /* ACHTUNG: Wie Sie vielleicht gemerkt haben, befindet sich im * Tastaturpuffer noch das "Zeilenende"-Zeichen nach Eingabe der * letzten Zahl! Dies muss entweder mit einem weiteren scanf() * "überlesen" werden, oder mit dieser Variante des Format-String * mit Leerzeichen vor %c behandelt werden. */ gelesen = scanf(" %c", &zeichen); /* Zeichen lesen und in der Speicherstelle von "zeichen" speichern, */ /* Anzahl gelesener Werte in "gelesen" merken. */ if(gelesen != 1) /* Ist die Anzahl gelesener Variablen ungleich 1? */ { printf("Sie haben leider kein Zeichen eingegeben!\n"); /* Meldung ausgeben */ return 1; /* Programm mit Fehlercode beenden */ } printf("Sie haben: '%d %d %c' eingegeben.\n", zahl1, zahl2, zeichen); /* War nicht verlangt. */ return 0; /* Programm ohne Fehlercode beenden */ }