0Pricing
C Academy · Lektion

Runden und Absolutwerte

floor, ceil, round und fabs.

Runden und Absolutwerte ist eine kostenlose C Academy-Lektion auf CoddyKit. Dies ist Lektion 4 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des C Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der C Academy-Kurs umfasst insgesamt 4 Lektionen.

Runden und Absolutwerte

In dieser Lektion geht es um Funktionen zum Anpassen von Zahlen: floor, ceil, round und trunc zum Runden sowie fabs für den Absolutwert.

Sie befinden sich alle in math.h und arbeiten mit double-Werten.

Die Funktion floor

floor(x) rundet ab zur nächsten ganzen Zahl, also in Richtung negativer Unendlichkeit.

Daher ist floor(3.9) gleich 3.0 und floor(-1.2) gleich -2.0.

#include <stdio.h>
#include <math.h>

int main(void) {
    printf("%.1f\n", floor(3.9));
    printf("%.1f\n", floor(-1.2));
    return 0;
}

Die Funktion ceil

ceil(x) rundet auf zur nächsten ganzen Zahl, also in Richtung positiver Unendlichkeit.

Daher ist ceil(3.1) gleich 4.0 und ceil(-1.8) gleich -1.0.

#include <stdio.h>
#include <math.h>

int main(void) {
    printf("%.1f\n", ceil(3.1));
    printf("%.1f\n", ceil(-1.8));
    return 0;
}

Die Funktion round

round(x) rundet auf die nächste ganze Zahl. Genau in der Mitte liegende Werte werden von null weg gerundet.

Daher ist round(2.5) gleich 3.0 und round(2.4) gleich 2.0.

#include <stdio.h>
#include <math.h>

int main(void) {
    printf("%.1f\n", round(2.5));
    printf("%.1f\n", round(2.4));
    return 0;
}

Die Funktion trunc

trunc(x) schneidet einfach den Dezimalteil ab und bewegt sich dabei immer in Richtung null.

Daher ist trunc(3.9) gleich 3.0 und trunc(-3.9) gleich -3.0.

#include <stdio.h>
#include <math.h>

int main(void) {
    printf("%.1f\n", trunc(3.9));
    printf("%.1f\n", trunc(-3.9));
    return 0;
}

Die vier Funktionen im Vergleich

Für den Wert 2.7 unterscheiden sich die Ergebnisse:

  • floor(2.7) = 2.0 (ab)
  • ceil(2.7) = 3.0 (auf)
  • round(2.7) = 3.0 (nächste Zahl)
  • trunc(2.7) = 2.0 (in Richtung null)

Wählen Sie die Funktion, die Ihrer Absicht entspricht.

Absolutwert mit fabs

fabs(x) gibt den Absolutwert einer Gleitkommazahl zurück: den Abstand von null, der immer nicht negativ ist.

Daher ist fabs(-7.5) gleich 7.5.

#include <stdio.h>
#include <math.h>

int main(void) {
    printf("%.1f\n", fabs(-7.5));
    printf("%.1f\n", fabs(7.5));
    return 0;
}

fabs und abs im Vergleich

Seien Sie vorsichtig: abs aus stdlib.h arbeitet mit Ganzzahlen, während fabs aus math.h mit doubles arbeitet.

Wenn Sie abs auf einen double anwenden, werden zuerst die Dezimalstellen abgeschnitten. Verwenden Sie für Gleitkommazahlen immer fabs.

In int umwandeln

Diese Funktionen geben einen double zurück. Um eine ganze Zahl als int zu speichern, wandeln Sie das Ergebnis per Cast um.

Am sichersten ist es, zuerst round zu verwenden und anschließend umzuwandeln, damit Werte wie 2.999 nicht versehentlich zu 2 werden.

#include <stdio.h>
#include <math.h>

int main(void) {
    double x = 4.6;
    int whole = (int)round(x);
    printf("whole = %d\n", whole);
    return 0;
}

Ein Entfernungsbeispiel

fabs ist praktisch, um den Abstand zwischen zwei Werten zu messen, unabhängig davon, welcher größer ist.

Hier ermitteln wir den Unterschied zwischen zwei Temperaturen.

#include <stdio.h>
#include <math.h>

int main(void) {
    double a = 5.0, b = 12.5;
    printf("gap = %.1f\n", fabs(a - b));
    return 0;
}

Auf Dezimalstellen runden

Um auf zwei Dezimalstellen zu runden, multiplizieren Sie mit 100, runden und teilen anschließend durch 100.

Dieser Trick verwendet round, damit Werte im Geldformat übersichtlich bleiben.

#include <stdio.h>
#include <math.h>

int main(void) {
    double price = 3.14159;
    double r = round(price * 100.0) / 100.0;
    printf("%.2f\n", r);
    return 0;
}

Schnelltest

Rufen Sie sich in Erinnerung, wie sich die einzelnen Rundungsfunktionen verhalten.

Zusammenfassung

Sie haben floor (ab), ceil (auf), round (nächste Zahl) und trunc (in Richtung null) sowie fabs für den Absolutwert von doubles kennengelernt.

Denken Sie daran, bei Gleitkommazahlen fabs statt abs zu verwenden und in int umzuwandeln, wenn Sie eine ganze Zahl benötigen. Hervorragend, Sie haben den Kurs zu math.h abgeschlossen!

Häufig gestellte Fragen

Ist die Lektion „Runden und Absolutwerte“ kostenlos?

Ja — der vollständige Text von „Runden und Absolutwerte“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des C Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der C Academy-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Runden und Absolutwerte“?

floor, ceil, round und fabs. Du übst C Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um C Academy zu starten?

Keine Vorkenntnisse erforderlich. C Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 4 von 4.

Wie lange dauert die Lektion „Runden und Absolutwerte“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser C Academy-Lektion Code schreiben und ausführen?

Ja. Jede C Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. math.h einbinden
  2. Potenzen und Wurzeln
  3. Trigonometrie und Logarithmen
  4. Runden und Absolutwerte
← Zurück zu C Academy