यह मल्टी-वे डिसीजन लिखने का सबसे सामान्य तरीका है।
सिंटैक्स
नीचे दिए गए सिंटैक्स को देखें:
if (condition1) stmt1; else if (condition2) stmt2; // ... else if (condition_n) stmt_n; else stmt_x;

एल्गोरिदम
नीचे दिए गए एल्गोरिदम को देखें:
शुरुआत
चरण 1: int वेरिएबल्स घोषित करें।
चरण 2: रनटाइम पर a,b,c,d मान पढ़ें।
चरण 3: i. यदि (a>b && a>c && a>d) तो a सबसे बड़ा प्रिंट करें
ii. अन्यथा यदि (b>c && b>a && b>d) तो b सबसे बड़ा प्रिंट करें
iii. अन्यथा यदि (c>d && c>a && c>b) तो c सबसे बड़ा प्रिंट करें
iv. अन्यथा d सबसे बड़ा प्रिंट करें
समाप्ति
उदाहरण
निम्नलिखित C प्रोग्राम एल्स-इफ लैडर कंडीशनल ऑपरेटर्स को निष्पादित करता है:
#include <stdio.h>
int main() {
int a, b, c, d;
printf("a, b, c, d के मान दर्ज करें: ");
scanf("%d%d%d%d", &a, &b, &c, &d);
if (a > b && a > c && a > d) {
printf("%d सबसे बड़ा है", a);
} else if (b > c && b > a && b > d) {
printf("%d सबसे बड़ा है", b);
} else if (c > d && c > a && c > b) {
printf("%d सबसे बड़ा है", c);
} else {
printf("%d सबसे बड़ा है", d);
}
return 0;
}
आउटपुट
आप निम्नलिखित आउटपुट देखेंगे:
Run 1: a, b, c, d के मान दर्ज करें: 2 4 6 8 8 सबसे बड़ा है Run 2: a, b, c, d के मान दर्ज करें: 23 12 56 23 56 सबसे बड़ा है
एक और C प्रोग्राम पर विचार करें जो एल्स-इफ लैडर का उपयोग करके छात्र की ग्रेड प्रदर्शित करता है:
#include <stdio.h>
int main() {
int marks;
printf("छात्र के अंक दर्ज करें:\n");
scanf("%d", &marks);
if (marks <= 100 && marks >= 90)
printf("Grade = A");
else if (marks < 90 && marks >= 80)
printf("Grade = B");
else if (marks < 80 && marks >= 70)
printf("Grade = C");
else if (marks < 70 && marks >= 60)
printf("Grade = D");
else if (marks < 60 && marks > 50)
printf("Grade = E");
else if (marks == 50)
printf("Grade = F");
else if (marks < 50 && marks >= 0)
printf("फेल");
else
printf("0 और 100 के बीच वैध स्कोर दर्ज करें");
return 0;
}
आउटपुट
आप निम्नलिखित आउटपुट देखेंगे:
Run 1: छात्र के अंक दर्ज करें: 78 Grade = C Run 2: छात्र के अंक दर्ज करें: 98 Grade = A