Letztes Update 2020/10/07 12:05
An der Konsole starten wir den Editor Nano:
nano eingabe.c
Hier geben wir folgendes ein:
/* eingabe.c */ #include <stdio.h> int main() { int alter; printf("Dein Alter: "); scanf("%d", &alter); if (alter > 1) { printf("Du bist %d Jahre alt", alter); } else { printf("Du bist %d Jahr alt", alter); } printf(" \n"); return 0; }
mit Strg+o
den Text speichern und mit Strg+x
den Editor verlassen.
scanf
scanf ist auch Teil der stdio. Hier wird beim Programmablauf eine Eingabe erwartet. Da die Variable alter
als Integer definiert ist int alter;
, werden keine Kommawerte übernommen.
Die Bedeutung von &
Die Zeile scanf(„%d“, &alter);
bedeutet, lies an der Stelle alter
den Wert aus und gib ihn mir. D.h. & ist ein Adressoperator, der auf die Adresse von alter zeigt bzw. diese Adresse „referenziert“. An der Adresse von &alter steht der Integerwert, der gesucht ist.
ACHTUNG: Falls eine Dezimalzahl übernommen werden soll, darauf achten, dass in C das Komma durch einen Punkt eingegeben werden muss. Eine falsche Eingabe kann durch eine Prüfung im Programmablauf korrigiert werden.
if - else
Damit wird eine Verzweigung innerhalb des Programms anhand einer Bedingung entschieden. Hier wird in einer einfachen Form zwischen Ein- und Mehrzahl entschieden. Falls das eingegebene Alter größer als eins ist, soll in der Aushabe Jahre stehen, ansonsten (else) Jahr.
Das Schlüsselwort else
wird verwendet, um den nachfolgenden Code auszuführen, wenn die Bedingung nicht zutrifft. Hier also, wenn alter
nicht größer als eins ist.
gcc -o eingabe eingabe.c
Ausgeführt wird das Programm, indem folgendes eingegeben wird:
./eingabe
Die Ausgaben an der Konsole könnten dann so aussehen:
pi@server:~/c_kurs $ ./eingabe Dein Alter: 1 Du bist 1 Jahr alt pi@server:~/c_kurs $ oder pi@server:~/c_kurs $ ./eingabe Dein Alter: 12 Du bist 12 Jahre alt pi@server:~/c_kurs $