c++基础--另类的分支结构

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/dengminghli/article/details/79216597

前言:

本节课讲的主要知识点是三目运算符和switch语句。同时也是我们分支结构部分的结尾内容。而从第三课开始到第五课,都是讲述分支结构的相关知识点,他们的特点都是相辅相成的。因此建议通读三篇文章。加强理解。同时做题也是必不可少滴。

三目运算符

三目运算符是一种简化版本的分支结构,使用简单,但是不宜嵌套过多。 否则容易造成逻辑混乱。它的格式为:

判断条件?当条件正确的时候执行的代码 : 当条件不正确的时候执行的代码
记住?表示判断,:表示另一种情况

比如,比较两个数a,b的大小

int a,b,max;
a>b?max=a:max=b;

这样的写法是不是特别简单,但是这个语句常使用于两种状态,等价于 if…else语句。只是简单了很多。同时,也是因为简单,如果需要多层嵌套的时候,容易发生逻辑错误。比如找出a,b,c的最大值

a>b?(a>c?a:C):(b>c?b:c)

当要比较两个数的最大值时,很是简单。当要比较三个数的最大值是,其实可以发现已经比较复杂。很多时候要是不注意就会发生一些逻辑上的忽略,造成丢分。因此。我们说使用三目运算符的时候,最大不超过两层嵌套,也就是说,除非结果真的很显而易见,否则一般还是直接用if语句。

switch语句

switch语句是另一种分支结构的表现形式。主要适用于一些特定情况下的匹配状态。比如 数字匹配或者字符匹配。其格式为:

switch(要匹配的内容){
    case 可能匹配到的状态1:
          当匹配成功时需要写的代码1
    case 可能匹配到的状态2:
          当匹配成功时需要写的代码2
    case 可能匹配到的状态3:
          当匹配成功时需要写的代码3
    default:
        当上面的状态都不成功时需要写的代码4
    }

比如:
这里写图片描述
在这个例子中,便是switch语句的一个雏形,不过和其他分支结构有点不一样的地方在于,我们不仅是执行匹配到的代码,还会从该行开始,执行下面的语句,同样,我们看一个例子:
这里写图片描述
比对程序,我们发现,我们输入的是1,switch匹配到了1之后,从第7行开始往下之行。分别无视其他的匹配条件一直往下面执行,直到switch语句结束。那如果我们要在某一个地方就不再执行这个代码的话,应该怎么强制停止呢?下面就是要介绍一个更有趣的东西,叫做你妈叫你回家吃饭之——break中断语句。
当我们要在switch中,执行了某一个匹配项内的代码之后,不想继续执行下去的时候,就直接使用break停止。格式及效果如下:
这里写图片描述
所以记住,用break终止switch语句的执行。

总结注意点:

1.三目运算符符号格式要正确,不要过多嵌套
2.三目运算符的真假两端要填的内容保持一致,左边是怎么写,右边就对应着写
3.switch适用于匹配字符或者整型数字,不能是其他的数据类型
4.switch从匹配到的case中往下顺序执行,而不是只执行case里面的内容
5.switch中断需要使用break’关键字

猜你喜欢

转载自blog.csdn.net/dengminghli/article/details/79216597