00:01
我们再来看一下跳转控制语句,这个跳转控制语句呢,它是break,也是控制我们程序的执行流程的一个语句叫break,那这个break为什么会有呢?同样我们还是看一个需求。引出我们要讲的break,比如说现在有这么一个案例,大家思考一下你会怎么实现哈,说随机的生成一个数,但这个随机数是多少咱不知道啊,咱不知道他可能是一,可能是二,然后呢,他说直到生成了97这个数的时候问。问。一共用了多少次?就是说你你你你在不停的随机生成一个数,什么时候生成97个数呢。把那把那个次数给统计出来。那这里呢,有一个问题,就是说有些同学老师随机生成一个数用什么方法呢?或者用什么函数呢?在C语里面,C语言里面的STDNE就是standard library这个头文件里边呢,它有一个这个函数,这个函数呢,可以返回一个零到RA max之间的一个尾随机数,也就是说它能产生一个零到RA max之间的一个随机数,明白这意思吧。
01:17
但是呢,这个随机数到底是多少不知道,因此别人问你的是问什么时候生成97了。就这个题,现在的问题在什么地方呢?你用for循环。你用while循环,大家还记不记得?或者是do外,大家有没有有没有这样一个感受,就是说这个for循环,While循环,Do外循环呢,它一般来讲哈,就是按照你设计的这个呃,循环的次数。呃,然后呢,给你执行的,但现在的问题是我有这么一个需求,可能是这样一个需求,就是按照这个需求,就是说当我生成了97,我就退出来。所以说他就。有一个什么样的需求呢,就是当在我这样说啊,在执行循环。
02:06
循环的过程中,过程中当满足某个条件时,条件时可以可以提前。对,可以提前。提前终止或者退出该循环。该循环。循环,那么这时我们就可能会用到break。对,这时。这时就可能。可能使用到使用到break。就这个意思。那有些说老师,那这个break到底是长什么样子呢?我们来看一下它的基本语法。那作为一个break来说呢?它是一个跳转控制语句,它的作用是终止某个语句块的执行。比如说我们可以使用在Switch。也可以使用在循环中,循环哪个都可以for循环,Y循环,Do循环,都可以用break语句,那它的基本语法就这样子的,就在一个代码块里面,或者在一个语句块里面,你写break就行了。
03:13
那现在讲到这儿,可能同学们还是不太明白break是什么,那还是用案例说话。同学们看哈,我现在先给同学们以while为例给大家看一下break语句是。是它的一个流程是什么样子的,这个图呢,我已经画好了,我直接给大家看就可以了。打开这个break句,大家看。比如说这是,呃,这是我们的,大家看这是一个while循环的一个流程图。怎么执行的?先是循环变量初始化判断循环条件,如果为真,就去执行这里面的代码,如果为假,就结束这个Y循环,这个是不是同学们已经非常熟悉了?非常熟悉,外循环是在哪里呢?当它在这个循环体执行完毕过后呢,他又去判断循环条件。
04:05
那we break语句在哪里?大家看这里。大家看。在我们这个循环体里边,注意听,在这个循环体里边,如果。如果遇到了break语句,至于这个语句是在什么情况下遇到的,这个无所谓,只要在这个循环题里边遇到这个break语句,它直接就从这个地方退出这个Y循环了。大家看这条线是怎么画的?大家看,这条线是从这直接出来的,也就是说当我们在进行while循环的时候,如果在这个循环体里边执行到了一个break语句,那么他就会提前终止这个Y循环,而不会再去进行循环条件判断。就这么一点。当然,For循环。还有do外循环也是一个意思,老师就不再赘述了,我相信大部分同学都应该理解吧,大家都这么聪明,应该很好理解。
05:04
好,那明白这个流程图以后呢,大家就来看一道题,看看大家能否回答这段代码输出什么结果。看这段代码,我们来分析一下。那么它在这里呢?有一个变量叫I,对,呃,没有初始化。就定义一个I,然后在这个for循环里面,大家看。这个I等于零,I小于十,I加加,然后呢,如果大家看这里面哈,如果I等于三就break语句,否则呢,就不停的输出这个I等于多少,那我问大家,你们觉得这句话就是这段代码一旦执行会输出什么?我们先把这段代码拿过来用一下。因为待会儿我们要去运行,所以说我现在呢,提前在这写个break啊break的测试案例。Break的一个DEMO,跟上老师思路,同学们并不难哈,我们现在学的东西都很简单,没有什么难度。
06:02
但是呢,有一个前提,就是你要认真听,认真认真听,认真去做题,都可以学会include。Std对不对,同学们那VO。主函数。那同学们可以看到现在代码呢,我先放这儿,我格式化一把。对,格式化一版,呃,这段代码大家看是能能否看懂啊,我在格式化好一点。这样大家应该看得更清晰了。那同学们看,根据刚才讲的寻这个break的流程控制图。我们假如没有这句话。是不是就是从零输到九啊,因为I小于十就会退出啊,I小于是成立才会执行,I等于十的时候就不执行了,应该如果我们没有这个break语句,它应该输出的是零到九。我们可以先运行一下。这这些这些代码现在应该大家看得很清晰了,我执行你看到诶这边是不是还是有一些没有注销的。
07:08
好,我把这先注销一下再运行。跑起来看代码,在你没有加break语句的时候呢,他应该输出零到九,诶这边又闪了一下get charge。来,再来运行号。再来运行,那运行过后呢,我们可以看到的确输出了零到九,现在我把这个打开。同学们想,思路变成什么了?这句话是不是当I增加到这个。增加I等于三的时候,它就break了,那我问大家输出什么呀?是不是这样子的,它第一次是零,零等于三吗?不等于三就不进来,所以说它第一次输出零。然后呢,这边I加加变成一了,一等于三吗?一也不等于三,所以不进来,然后输出I等于一,然后I加加I变成二了,I变成二,二等于三吗?二也不等于三,不进不进确说说输出二,再I加加变成三了,注意I。
08:05
I等于三的时候,I小于十是成立的,但是I等于三成立,它就会进行这个break,这个break语句一旦碰到了,它就会直接。提前终止这个for循环。因此,如果是这样,加了这段代码。这个if语句过后,配合这个break呢,我们这边只输出了012。我们指数零二,大家看是不是这样子的。对,你看这地方就输出了012,没有再输出其他值了。也就是说,这个break语句会提前终止,会当当执行到,注意执行到breaks。Breaks就会就会终止或者退出for循环。For循环,当然,如果你是Y,要循环,多循环也是一样的下场。好,这就是关于这一个。Break语句的基本介绍和它的流程大家看懂了没有,如果你想不起来,就把这个图打开看一看哈,其实特别简单,就是你只要记住当执行到一个break的时候呢,它不会按照原先的路线执行,直接就直接就走了。
09:13
各位,那关于我们这个break语句的基本介绍就说到这里。
我来说两句