In diesem Abschnitt erklären wir die Verwendung von Ein- und Ausgabefunktionen in der Programmiersprache C, insbesondere anhand der Funktionen printf
und scanf
. Diese Funktionen bieten umfangreiche Möglichkeiten zur Formatierung von Ein- und Ausgaben.
Hinweis:printf
und scanf
sind nicht Teil der C-Programmiersprache selbst, sondern gehören zur Standardbibliothek von C.
In den meisten Programmiersprachen ist der "Hallo Welt"-Code der erste, den man schreibt. Dieser Code enthält oft eine Ausgabe mit printf
, um "Hallo Welt" auf der Kommandozeile anzuzeigen.
Um printf
verwenden zu können, muss zuerst die Standardbibliothek hinzugefügt werden. Dies geschieht ganz oben im Code durch die Zeile #include <stdio.h>
.
#include <stdio.h>
int main() {
printf("Hallo Welt!");
return 0;
}
Um Variablen auszugeben, werden sogenannte Formatbeschreiber verwendet. Ein Formatbeschreiber besteht aus einem Prozentzeichen (%
) gefolgt von einem Buchstaben. Je nach Datentyp wird ein anderer Buchstabe verwendet, und an der Stelle des Formatbeschreibers wird der Wert der Variable eingesetzt.
In diesem Beispiel wird der Wert der Variable zahl
in der Kommandozeile ausgegeben. Die Ausgabe sieht so aus: "Die Zahl ist 10." An der Stelle %d
wird der Wert der Variable eingesetzt.
#include <stdio.h>
int main() {
int zahl = 10;
printf("Die Zahl ist %d.", zahl);
return 0;
}
Dies bietet eine einfache Möglichkeit, den Wert von Variablen auf der Kommandozeile auszugeben.
Datentyp | |
---|---|
int | %d |
float, double | %f |
char | %c |
Standardmässig werden bei %f
6 Dezimalstellen ausgegeben. Wenn du eine andere Anzahl von Dezimalstellen wünschst, musst du dies angeben.
#include <stdio.h>
int main() {
float zahl = 10.341241;
printf("Die Zahl ist %.2f", zahl);
return 0;
}
Die Ausgabe auf der Kommandozeile zeigt nun "10.34" und nicht mehr alle 6 Dezimalstellen. Die Anzahl der Dezimalstellen wird durch die Zahl vor dem f
festgelegt. Wenn 0 gewählt wird, werden keine Dezimalstellen angezeigt, und die Ausgabe wird gerundet.
Die Funktion scanf
ermöglicht es, Benutzereingaben in C zu verarbeiten. Mit scanf
kannst du Werte von der Benutzerin oder dem Benutzer einlesen und in Variablen speichern.
Um scanf
verwenden zu können, musst du ebenfalls die Standardbibliothek hinzufügen, indem du #include <stdio.h>
ganz oben im Code platzierst.
#include <stdio.h>
int main() {
int eingabe; // Hier speichern wir die Benutzereingabe
printf("Bitte gib eine Zahl ein: ");
scanf("%d", &eingabe); // Wir lesen eine Ganzzahl ein und speichern sie in 'eingabe'
printf("Du hast %d eingegeben.", eingabe);
return 0;
}
In scanf
verwendest du Formatanweisungen, um anzugeben, welchen Datentyp du einlesen möchtest. Diese Anweisungen ähneln den Formatbeschreibern in printf
. Im obigen Beispiel verwenden wir %d
um eine Ganzzahl einzulesen.
Wichtig: Beachte das &
-Zeichen vor dem Variablennamen in scanf
. Es wird benötigt, um die Adresse der Variablen zu übergeben, in der der eingelesene Wert gespeichert werden soll.
int eingabe;
scanf("%d", &eingabe);
So liest scanf
eine Ganzzahl von der Benutzerin oder dem Benutzer ein und speichert sie in der Variable eingabe
.
scanf
kann auch für andere Datentypen wie Fliesskommazahlen (%f
), Zeichen (%c
) und viele andere verwendet werden. Beachte jedoch immer, dass das Format in der Formatanweisung zu dem Datentyp der Variable passen muss, in der du den Wert speichern möchtest.
In diesem Abschnitt haben wir die Verwendung der Ein- und Ausgabefunktionen in C, insbesondere printf und scanf, erklärt. Diese Funktionen ermöglichen die Ausgabe von Text und Variablen auf der Kommandozeile sowie die Verarbeitung von Benutzereingaben. Beachte, dass printf und scanf zur Standardbibliothek von C gehören und umfangreiche Formatierungsoptionen bieten. Mit printf kannst du Text und Variablen ausgeben, während scanf Benutzereingaben einlesen kann. Beide Funktionen sind nützliche Werkzeuge, um interaktive Programme in C zu erstellen.
Die Aufgaben zu Ein- und Ausgabefunktionen sind auf GitHub zu finden.