Đây là cách chung nhất để viết một quyết định nhiều chiều.
Cú pháp
Tham khảo cú pháp đưa ra bên dưới -
if (condition1) stmt1; else if (condition2) stmt2; - - - - - - - - - - else if (condition n) stmtn; else stmt x;
Thuật toán
Tham khảo thuật toán đưa ra bên dưới -
START Step 1: Declare int variables. Step 2: Read a,b,c,d values at runtime Step 3: i. if(a>b && a>c && a>d) Print a is largest ii.else if(b>c && b>a && b>d) Print b is largest iii. else if(c>d && c>a && c>b) Print c is largest iv. else print d is largest STOP
Ví dụ
Sau đây là chương trình C để thực thi các toán tử điều kiện Else If Ladder -
#include<stdio.h> void main (){ int a,b,c,d; printf("Enter the values of a,b,c,d: "); scanf("%d%d%d%d",&a,&b,&c,&d); if(a>b && a>c && a>d){ printf("%d is the largest",a); }else if(b>c && b>a && b>d){ printf("%d is the largest",b); }else if(c>d && c>a && c>b){ printf("%d is the largest",c); }else{ printf("%d is the largest",d); } }
Đầu ra
Bạn sẽ thấy kết quả sau -
Run 1:Enter the values of a,b,c,d: 2 4 6 8 8 is the largest Run 2: Enter the values of a,b,c,d: 23 12 56 23 56 is the largest
Hãy xem xét một chương trình C khác hiển thị điểm của học sinh bằng cách sử dụng lệnh else if -
#include<stdio.h> int main(){ int marks; printf("Enter the marks of a student:\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("Fail"); else printf("Enter a valid score between 0 and 100"); return 0; }
Đầu ra
Bạn sẽ thấy kết quả sau -
Run 1: Enter the marks of a student:78 Grade=C Run 2: Enter the marks of a student:98 Grade=A