if else结构

/*
 if else结构
     分支结构,一个问题的两种情况,但只会选择一种情况执行。
     1)if后面跟着条件表达式,再跟着一条或多条语句,如果条件表达式成立则执行if紧挨的语句块,如果条件不成立则执行else后面的语句块;
     2)else可选,如果不成立可以没有执行语句;
     3)所以if else结构要么是2选1,要么是2选0(当没有else情况可能发生)
     4)一条语句可以不用大括号{},如果是多条语句就一定要用大括号{}把多条语句括起来;
     5)条件表达式的值:
        A.结果为真或假,true,false
        B.可以是任何布尔表达式
        C.把任何非零和非空的值看成是true, 把0或NULL看成是false
     6)格式如下:
        格式1:一条语句情况
            if(条件表达式)
                语句1; //满足条件时执行
            else
                语句2; //不满足条件时执行
     
        格式2:多条语句情况
            if(条件表达式){
                语句组; //满足条件时执行
            }else{
                语句组; //不满足条件时执行
            }
     
        格式3:由于else可选,可以没有else情况
            if(条件表达式){
                语句组; //满足条件时执行,不满足条件时if结构结束
            }
 
 总结:
 else 是可选;
 多条语句一定要大括号;
 条件表达式:true,非0都为真,false,0为假;
 可以是复合表达式,最终结果都为true,false;
 算术运算符 关系运算符 逻辑运算符 赋值运算符,这四个优先级是从高到低,赋值运算符优先级最低;
 注意:在关系运算符里,< <= > >=  优先于 == !=;
 在逻辑运算符里 !优先于 && , &&优先于||。
    
 */

#include <iostream>
using namespace std;

int main() {
    // 判断n是否大于等于10
    int n=15;
    if(n>=10){
        cout<<"n 大于等于10"<<endl;
        cout<<n<<endl;
    }else{
        cout<<"n 小于10"<<endl;
    }
    
    /*
     输出:
     n 大于等于10
     15
     */
    
    // 上面可改写
    if(n>=10){
        // 两条语句不能省略大括号
        cout<<"n 大于等于10"<<endl;
        cout<<n<<endl;
    }else
        cout<<"n 小于10"<<endl; //一条语句可省略大括号
    
    /*
     输出:
     n 大于等于10
     15
     */
    
    
    // else是可选的,如果不成立可以不做任何事情
    if(n>=10){
        cout<<"n 大于等于10"<<endl;
        cout<<n<<endl;
    }
    
    /*
     输出:
     n 大于等于10
     15
     */
    
    // 关于条件表达式,true,非0都是真,false,0是假,
    // 也可以是复合表达式,关系运算 >, <, >=, <=, ==, !=,逻辑运算符 &&, ||, !=
    // 注意运算符的优先级:算术运算符 关系运算符 逻辑运算符 赋值运算符,这四个优先级是从高到低,赋值运算符优先级最低
    // 注意要条件的比较相等是==,千万能不写成=
    if(n=10){ //错误写法,n=10是赋值运算,结果是10,10是非0,为真,要写成 n==10,这才是比较两数是否相等
        cout<<"n 大于等于10"<<endl;
        cout<<n<<endl;
    }
    
    /*
     输出:
     n 大于等于10
     10
     */
    
    return 0;
}