אופרטור תנאי טרנרי
חלק מהיחידה יסודות במסלול ה-C של Coddy. שיעור 29 מתוך 63.
האופרטור התנאי הטרנרי הוא דרך מקוצרת לכתוב משפט if-else בשורה אחת.
התחביר הוא:
condition ? value_if_true : value_if_false;בואו נבחן דוגמה. ראשית, הנה פקודת if-else מסורתית:
int max;
if (a > b) {
max = a;
} else {
max = b;
}עכשיו, נכתוב אותו מחדש באמצעות האופרטור הטרנרי:
int max = (a > b) ? a : b;בדוגמה הזו:
a > bהוא התנאי- אם התנאי נכון, מוחזר
a - אם התנאי שגוי, מוחזר
b
אפשר גם לקנן את האופרטור הטרנרי, אבל הדבר עלול להקשות על קריאת הקוד:
int x = (a > b) ? ((a > c) ? a : c) : ((b > c) ? b : c);אתגר
קלצרו תוכנית שבודקת אם מספר הוא חיובי, שלילי או אפס באמצעות האופרטור התנאי. התוכנית צריכה:
- לקבל מהמשתמש קלט של מספר שלם.
- להשתמש באופרטור התנאי כדי לקבוע אם המספר חיובי, שלילי או אפס.
- להדפיס את התוצאה בפורמט:
"The number is [positive/negative/zero]".
נסו בעצמכם
#include <stdio.h>
int main() {
int number;
scanf("%d", &number);
// כתבו את הקוד שלכם למטה
// החליפו את הטקסט הזמני בביטוי תנאי
char* result = "zero";
printf("The number is %s\n", result);
return 0;
}השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה יסודות
תרגלו בעצמכם: קומפיילר C אונליין