if else if结构

/*
 if else if结构
 多分支结构,但只会选择一个分支执行或没分支被执行(多选1或多选0)
 if 语句后可跟可选的一个或多个else if(条件表达式),也可跟可选的else语句
 格式:
    if(条件表达式){
        语句块;
    }else if(条件表达式2){
        语句块2;
    }else if(条件表达式3){  //可选,0个、1个或多个else if都可以
        语句块3;
    }else{ //可选
        语句块4;
    }
 从第一个条件开始判断,如果满足条件就执行紧挨着的语句块,执行完成就结束当前的if结构,如果当前不满足条件,则继续判断下一个条件,如果满足条件则执行紧挨着的语句块,执行完结束if结构,不满足继续下一个条件,如此反复。当有else时,如果上面条件都不满足,则会执行else语句。
 注意:至多只会执行一个语句块,当所有条件都是false而且没有else情况,一个语句块都不会执行。
 如果语句块只有一条语句,那大括号可以省略。
 
 总结:
 只会多选1或多选0,从上向下依次匹配条件,如果满足则执行当前语句块,执行完就结构,如果不匹配就会继续匹配下一个条件。
 多分支也可以用多个单分支来写
 掌握打擂台思想
 
 */

#include <iostream>
using namespace std;

int main() {
    int n=20;
    
    // 检查条件表达式,从上向下依次匹配,如果匹配到成立,则执行紧挨着的大括号语句块
    if(n==10){
        // 匹配与10是否相等,不相等,则不会执行本语句块
        cout<<"n 的值为 10"<<endl;
    }else if(n==20){
        // 匹配与20是否相等,相等,则执行本语句块,执行本语句块后不会再向后匹配,而是结束本if结构
        cout<<"n 的值为 20"<<endl;
    }else if(n==30){
        // 匹配与30是否相等
        cout<<"n 的值为 30"<<endl;
    }else if(n==40){
        // 匹配与40是否相等
        cout<<"n 的值为 40"<<endl;
    }else{
        cout<<"没有匹配的值"<<endl;
    }
    cout<<"n 本身的值为:"<<n<<endl;
    
    /*
     输出:
     n 的值为 20
     n 本身的值为:20
     */
    return 0;
}