Menu
Coddy logo textTech

Ternärer Bedingungsoperator

Teil des Abschnitts Fundamentals der C-Journey von Coddy. Lektion 29 von 63.

Der ternary conditional Operator ist eine prägnante Möglichkeit, eine if-else-Anweisung in einer einzigen Zeile auszudrücken.

Die Syntax lautet:

condition ? value_if_true : value_if_false;

Schauen wir uns ein Beispiel an. Zuerst ist hier eine traditionelle if-else-Anweisung:

int max;
if (a > b) {
    max = a;
} else {
    max = b;
}

Jetzt schreiben wir es mit dem Ternary-Operator um:

int max = (a > b) ? a : b;

In diesem Beispiel:

  • a > b ist die Bedingung
  • Wenn die Bedingung wahr ist, wird a zurückgegeben
  • Wenn die Bedingung falsch ist, wird b zurückgegeben

Der Ternary-Operator kann auch verschachtelt werden, aber das kann den Code schwerer lesbar machen:

int x = (a > b) ? ((a > c) ? a : c) : ((b > c) ? b : c);
challenge icon

Aufgabe

Einfach

Erstelle ein Programm, das mithilfe des Conditional-Operators prüft, ob eine Zahl positiv, negativ oder null ist. Das Programm sollte:

  1. Eine Ganzzahl-Eingabe vom Benutzer entgegennehmen.
  2. Den Conditional-Operator verwenden, um zu bestimmen, ob die Zahl positive, negative oder zero ist.
  3. Das Ergebnis im folgenden Format ausgeben: "The number is [positive/negative/zero]".

Probier es selbst

#include <stdio.h>

int main() {
    int number;
    scanf("%d", &number);
    
    // Schreibe deinen Code darunter
    // Ersetze den Platzhaltertext durch einen bedingten Ausdruck
    char* result = "zero";
    
    printf("The number is %s\n", result);
    return 0;
}
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Fundamentals

Übe selbstständig: Online-C-Compiler