203-C++分支结构相关知识点

        学习完我们的顺序结构后,我们来认识一下编程中的第二个基础结构【分支结构】,它所要学习了解的有什么呢?

目录

01-分支结构概念

 02-条件判断运算符

1.比较运算符

2.逻辑运算符

03-if语句

1.单行格式if语句

2.多行格式if语句

3.多条件的if-else if- ... -else语句

4.嵌套if语句

04-三目运算符

05-switch语句


01-分支结构概念

02-条件判断运算符

        1.比较运算符

        2.逻辑运算符

03-if语句

        1.单行格式if语句

        2.多行格式if-else语句

        3.多条件的if-else if- ... -else语句

        4.嵌套if语句

04-三目运算符

05-switch语句


01-分支结构概念


分支结构:依据条件是否满足,有选择的执行相应功能

         那么在进行学习前,我们得先学习有哪些可以判断的运算符号。


 02-条件判断运算符


1.比较运算符

作用:用于表达式的比较,并返回一个真值(True,程序中非0为真,一般用1表示)假值(False,程序中用0表示)

运算符术语示例结果
==相等于4 == 30
!=不等于4 != 31
<小于4 < 30
>大于4 > 31
<=小于等于4 <= 30
>=大于等于4 >= 11

示例:

int main() {
​
    int a = 10;
    int b = 20;
​
    cout << (a == b) << endl; // 0 
​
    cout << (a != b) << endl; // 1
​
    cout << (a > b) << endl; // 0
​
    cout << (a < b) << endl; // 1
​
    cout << (a >= b) << endl; // 0
​
    cout << (a <= b) << endl; // 1
    
    system("pause");
​
    return 0;
}

注意:C和C++ 语言的比较运算中, ==“真”用数字“1”来表示, “假”用数字“0”来表示

2.逻辑运算符

作用:用于根据表达式的值返回真值或假值

运算符术语示例简记结果
!!a真出假,假出真如果a为假,则!a为真; 如果a为真,则!a为假。
&&a && b有假出假,全真出真如果a和b都为真,则结果为真,否则为假。
||a || b有真出真,全假出假如果a和b有一个为真,则结果为真,二者都为假时,结果为假。

示例1:逻辑非

//逻辑运算符  --- 非
int main() {
​
    int a = 10;
​
    cout << !a << endl; // 0
​
    cout << !!a << endl; // 1
​
    system("pause");
​
    return 0;
}

逻辑总结: 真出假,假出真

示例2:逻辑与

//逻辑运算符  --- 与
int main() {
​
    int a = 10;
    int b = 10;
​
    cout << (a && b) << endl;// 1
​
    a = 10;
    b = 0;
​
    cout << (a && b) << endl;// 0 
​
    a = 0;
    b = 0;
​
    cout << (a && b) << endl;// 0
​
    system("pause");
​
    return 0;
}

逻辑总结: 有假出假,全真出真

示例3:逻辑或

//逻辑运算符  --- 或
int main() {
​
    int a = 10;
    int b = 10;
​
    cout << (a || b) << endl;// 1
​
    a = 10;
    b = 0;
​
    cout << (a || b) << endl;// 1 
​
    a = 0;
    b = 0;
​
    cout << (a || b) << endl;// 0
​
    system("pause");
​
    return 0;
}

逻辑总结:有真出真,全假出假


03-if语句


1.单行格式if语句

格式:

if(条件){

  条件满足执行的语句

}

示例:

int main() {
​
    //选择结构-单行if语句
    //输入一个分数,如果分数大于600分,视为考上一本大学,并在屏幕上打印
​
    int score = 0;
    cout << "请输入一个分数:" << endl;
    cin >> score;
​
    cout << "您输入的分数为: " << score << endl;
​
    //if语句
    //注意事项,在if判断语句后面,不要加分号
    if (score > 600)
    {
        cout << "我考上了一本大学!!!" << endl;
    }
​
    system("pause");
​
    return 0;
}

注意:if条件表达式后不要加分号

2.多行格式if语句

格式:

if(条件){

   条件满足执行的语句

}

else{

   条件不满足执行的语句

}

 示例:

int main() {
​
    int score = 0;
​
    cout << "请输入考试分数:" << endl;
​
    cin >> score;
​
    if (score > 600)
    {
        cout << "我考上了一本大学" << endl;
    }
    else
    {
        cout << "我未考上一本大学" << endl;
    }
​
    system("pause");
​
    return 0;
}

3.多条件的if-else if- ... -else语句

格式:

if(条件1){

   条件1满足执行的语句

}else if(条件2){

   条件2满足执行的语句

}

...

else{

   都不满足执行的语句}

示例:

    int main() {
​
    int score = 0;
​
    cout << "请输入考试分数:" << endl;
​
    cin >> score;
​
    if (score > 600)
    {
        cout << "我考上了一本大学" << endl;
    }
    else if (score > 500)
    {
        cout << "我考上了二本大学" << endl;
    }
    else if (score > 400)
    {
        cout << "我考上了三本大学" << endl;
    }
    else
    {
        cout << "我未考上本科" << endl;
    }
​
    system("pause");
​
    return 0;
}

4.嵌套if语句

在if语句中,可以嵌套使用if语句,达到更精确的条件判断  

案例需求:

  • 提示用户输入一个高考考试分数,根据分数做如下判断

  • 分数如果大于600分视为考上一本,大于500分考上二本,大于400考上三本,其余视为未考上本科;

  • 在一本分数中,如果大于700分,考入北大,大于650分,考入清华,大于600考入人大。

int main() {
​
    int score = 0;
​
    cout << "请输入考试分数:" << endl;
​
    cin >> score;
​
    if (score > 600)
    {
        cout << "我考上了一本大学" << endl;
        if (score > 700)
        {
            cout << "我考上了北大" << endl;
        }
        else if (score > 650)
        {
            cout << "我考上了清华" << endl;
        }
        else
        {
            cout << "我考上了人大" << endl;
        }
        
    }
    else if (score > 500)
    {
        cout << "我考上了二本大学" << endl;
    }
    else if (score > 400)
    {
        cout << "我考上了三本大学" << endl;
    }
    else
    {
        cout << "我未考上本科" << endl;
    }
​
    system("pause");
​
    return 0;
}

04-三目运算符


作用: 通过三目运算符实现简单的判断

格式:表达式1 ? 表达式2 :表达式3

解释:

如果表达式1的值为真,执行表达式2,并返回表达式2的结果;

如果表达式1的值为假,执行表达式3,并返回表达式3的结果。

示例:

int main() {
​
    int a = 10;
    int b = 20;
    int c = 0;
​
    c = a > b ? a : b;
    cout << "c = " << c << endl;
​
    //C++中三目运算符返回的是变量,可以继续赋值
​
    (a > b ? a : b) = 100;
​
    cout << "a = " << a << endl;
    cout << "b = " << b << endl;
    cout << "c = " << c << endl;
​
    system("pause");
​
    return 0;
}

总结:和if语句比较,三目运算符优点是短小整洁,缺点是如果用嵌套,结构不清晰


05-switch语句


作用:执行多条件分支语句

格式:

switch(表达式)
​
{
​
    case 结果1:执行语句;break;
​
    case 结果2:执行语句;break;
​
    ...
​
    default:执行语句;break;
​
}

示例:

int main() {
​
    //请给电影评分 
    //10 ~ 9   经典   
    // 8 ~ 7   非常好
    // 6 ~ 5   一般
    // 5分以下 烂片
​
    int score = 0;
    cout << "请给电影打分" << endl;
    cin >> score;
​
    switch (score)
    {
    case 10:
    case 9:
        cout << "经典" << endl;
        break;
    case 8:
        cout << "非常好" << endl;
        break;
    case 7:
    case 6:
        cout << "一般" << endl;
        break;
    default:
        cout << "烂片" << endl;
        break;
    }
​
    system("pause");
​
    return 0;
}

注意1switch语句中表达式类型只能是整型或者字符型

注意2case里如果没有break,那么程序会一直向下执行

总结与if语句比,对于多条件判断时,switch的结构清晰,执行效率高,缺点是switch不可以判断区间


谢谢大家的阅览,希望对您有所帮助,祝大家都能学有所成,学有所长。~~~///(^v^)\\\~~~  

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值