Ternary Koşul Operatörü
Coddy'nin C Journey'sinin Fundamentals bölümünün bir parçası — ders 29 / 63.
Ternary koşul operatörü, bir if-else ifadesini tek bir satırda ifade etmenin kısa bir yoludur.
Sözdizimi şu şekildedir:
condition ? value_if_true : value_if_false;Bir örneğe bakalım. İlk olarak, işte geleneksel bir if-else ifadesi:
int max;
if (a > b) {
max = a;
} else {
max = b;
}Şimdi, bunu ternary operatörünü kullanarak yeniden yazalım:
int max = (a > b) ? a : b;Bu örnekte:
a > bkoşuldur- Koşul doğruysa,
adöndürülür - Koşul yanlışsa,
bdöndürülür
Üçlü operatör (ternary operator) iç içe de kullanılabilir, ancak bu kodun okunmasını zorlaştırabilir:
int x = (a > b) ? ((a > c) ? a : c) : ((b > c) ? b : c);Görev
KolayKoşul operatörünü kullanarak bir sayının pozitif, negatif veya sıfır olup olmadığını kontrol eden bir program oluşturun. Program şunları yapmalıdır:
- Kullanıcıdan bir tam sayı girişi alın.
- Sayının pozitif, negatif veya sıfır olduğunu belirlemek için koşul operatörünü kullanın.
- Sonucu şu biçimde yazdırın:
"The number is [positive/negative/zero]".
Kopya kağıdı
Üçlü koşul operatörü (ternary conditional operator), bir if-else ifadesini tek bir satırda ifade etmek için kısa bir yol sağlar.
Sözdizimi:
condition ? value_if_true : value_if_false;Geleneksel if-else ile üçlü operatörü karşılaştıran örnek:
// Geleneksel if-else
int max;
if (a > b) {
max = a;
} else {
max = b;
}
// Üçlü operatör
int max = (a > b) ? a : b;Üçlü operatör iç içe yerleştirilebilir, ancak bu okunabilirliği azaltır:
int x = (a > b) ? ((a > c) ? a : c) : ((b > c) ? b : c);Kendin dene
#include <stdio.h>
int main() {
int number;
scanf("%d", &number);
// Kodunuzu aşağıya yazın
char* result =
printf("The number is %s\n", result);
return 0;
}Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Fundamentals bölümündeki tüm dersler
4Kontrol Akışı
If İfadesiIf - ElseElse-IfSwitch CaseTernary Koşul OperatörüÖzet Meydan Okumaİç İçe If - Else2Değişkenler
Veri TipleriTam Sayı (Integer)Float - DoubleKarakterlerBooleanlarSabitlerprintf TemelleriDeğişken İsimlendirme KurallarıTip Dönüşümü Bölüm 1Tip Dönüşümü Bölüm 2Özet Meydan Okuması3Operatörler
Aritmetik OperatörlerModül OperatörüArtırma/AzaltmaAtama Operatörleriİlişkisel OperatörlerMantıksal Operatörler Bölüm 1Mantıksal Operatörler Bölüm 2Mantıksal Operatörler Bölüm 3Özet Meydan Okuması