00:00
各位,我们接着来完成关于程序流程控制的综合练习的第二部分。那第二部分呢,我们还有一些题,我们一起来看。下一个题就是第七个题,定义一个变量,保存一个数,判断哈,判断是否能够被三整除或者能被七整除,如果是,则提示能,否则提示不能。这个题我就不讲了,特别简单。对不对?第八个题输入星期输一个星期几,如果是星期一到星期三打印AAA,星期四到星期五打印bdd,星期六到星期四打印CCC,如果都不是打印输错,这个用Switch语句加一个穿透就可以了。提示大家这个我也不去写了,因为很简单。提示就是Switch。加穿透。是不是Switch加一个穿透就可以了?我们再来看第九一个题。第九一个题呢,他是这样想的,他说B1等于零,B2也等于零,然后呢,他说B1等于。
01:07
A大于三,注意这个谁的优先级高啊。各位同学要注意看是谁的优先级高。谁的优先级高,显然这个优先级高一点,对不对,这要高,于是A就说这个二大于二大于三。它二大于三的话是不成立的,它会返回一个零。有甲吗?那B1B1。那就说B1。B1和零是相等的,所以这个结果呢为初。为处。紧接着呢,他又去判断第二。等于B。啊,五大于二,五大于零,这个是不是也是成立的,它应该返回一个什么呢?它会返回一个。呃,成立,返回一个非零,非零就返回默认是一,那B2 B2各位同学,B2现在是零,零等于一吗?显然这个是false。
02:07
对这个boss,如果这个是boss的话呢,这句话就不会进来。这句话就不会进来。那不会进来的话,我问同学们一个问题,最后这句话肯定不输出了,不输出那么B1等于多少呢?B2等于说B1和B2实际上是没有变化的,所以说这两个仍然是零。所以这个结果应该是零零,而且这句话不输出,我们来试一下,看看老师分析的是否正确,好,那这样子哈,我们把这个注销,我们再写一个新的文件,不写在一起了哦。咱们还是写一个二所有的exer c0,二第二个部分的。那同样道理,我们把这个呢的后缀改成C。那我们把刚才的这段代码给大家试一下,STDL。
03:02
根据刚才分析,结果应该是两个零。是不是两个零,同学们。而且呢,这句话不会被输出,我们把它格式化一下。对,我们运行一下,同学们运行。好运行起来,那运行我们可以看到这句话有没有被输出呢?应该没有输出,诶这地方忘了来一个get char对不对。不然的话看不到效果。运行。看一下效果。跑起来看零零跟我们分析的完全一样,现在呢,这又说了一个话,是说。将B0等于。B大于零改成B2啊B2啊,B2等于。B啊,五大于零,就说把后面这个地方。换成一个等号。啊,换成一个等号不是两个等号会怎么办呢?又会输出什么?同学们还记不记得刚才我们已经得到这个结果,这边是返回一个处。
04:04
是这样子吧,那现在如果这样写的话,B。B大于,就说这边。这个副词语句谁的优先级高,谁的优先级低,还有印象吗?就说。这个比较运算符和这个负值运算符谁的优先级高,谁的优先优先级级还有印象吗?如果没有印象好,同学们我们打开这个笔记,这个笔记又显得比较重要了,我们在哪讲的呀?在运算符是不是讲了它的一个优先级问题,来看一下是不是这讲的呀,我们来搂一。看谁的优先级高啊。算术运算符,关系运算符,看到没有赋值运算符的优先级是相对比较低的。是不是,那也就是说其实他是先执行这句话。这一句话,那么B大于零,它本身是。成立的。也就是说这地方会返回一个一,那B2也也就等于一,B2等于一,那整个这个结果也是真。
05:04
所以这两个都未增,而且B2呢,变成了一,因此这句话会被输出。这个会被输出。能理解,而下面这个地方应该输出什么呢?输出B1等于零,而B2等于一,能理解吗?就是如果你把这个等原先的这个两个等号换成了一个等号。这个结果就变化了。来各位朋友,我们运行一下,看看是不是这样子的呢。看看是不是样子呢,好,我们运行,我们看这个结果跟我们想的完全的一样。对,这里面就一定要考虑到我们的预算服务的优先级问题,就这里面要考虑的问题是什么,要充分考虑,对充分。充分考虑运算符的优先级问题。没问题吧?好,这道题我们就评价到这里,紧接着呢,我们继续来看下面的题。第十题我们来看一下输入什么?第十题这个int a等于零啊等于二。
06:07
嗯,这个Y循环先判断二小于二吗?那显然不成立,这个不成立,所以说这句话就不知情了,这个地方看。Do well do well呢,不管怎么样,它会先执行一下,说这个地方会输出这句话,输出完了,判断二小不小于二不成立,所以说这个doi呢,会输出一句话就退出了,因此这个结果应该是这样子的。会输出一次什么样这句。会输出一次执行do well能理解吗,同学们?好,这个就OK了。要输出一次执行语句。好,这个十题就评价完毕,11题我不讲了,它是用for循环,Y循环,Do y循环三种形式打印1000~999年是,呃,九九九千九百九十年所有的闰年,这个请同学们自己完成一个负循环就搞定。
07:03
第12题输出小写的A到Z以及大写的Z到A,注意这个是逆序。这个是顺序,他说输出小写的A到Z这边是。以及大写的这道A,那这个呢,我给同学们写一下,这个肯定要用for循环来完成。好朋友们,我们来给大家演示一下这道题好不好?来,同学们跟上我的思路哈。那这道题怎么写呢?我就直接上代码了,比较简单,我直接上啊,首先我们用一个叉。我们用一个char是不是用char就可以了呀,说我老师为什么可以用char呢?大家想一想,因为我们这个char他在用的时候其实是可以当做一个整数来使用的,所以说直接用差也是可以的,我负责。呃嗯,咱们就直接这样写就行了。For循环,大家看这种写法大家看能不能接受啊,C等于。
08:03
A。C等于A,然后呢,C1我们看啊,如果是C,我们看应该怎么写比较合理。对吧,我们看看怎么写它比较合理呢。C,那就C小于等于Z。因为我们知道字符是可以当做整数来使用的,然后C1对我们来怎么呢,加加。没问题吧,同学们没问题。然后呢,现在呢,说老师这个地方,如果说同学们这个看不明白的话呢,也可以把这个提到上面去哈,说老师我在外外面先定一个,然后这再复制一样的啊,如果说大家习惯这种写法啊,那么就输出了print f。Pretty,然后呢,我们就输出这个。这个东西C好,为了好看,咱们就这样写,然后这边是C。好,每输一个呢,咱们换一行。
09:02
最后get一下。好,第一个就做完了,我们来运行一下看看效果对不对,从小A到小Z。是不是小A到小Z啊,你看这里从这一开始输出A开始往下走,到这结束,那有些同学老师我在这直接写,这样可不可以呢?大家可以看看一下,我把这个注销了。我们看看这样行不行哈,走起来,把这个先关闭一下。再来运行。看看行不行?好失败,这不让这么做哈,不让这么做,所以说我们还是得怎么样呢,分开写。对,他不支持这个写法,有些语言呢,它是可以的,你看改成这个德行就可以了。对,你看这样子它就没有任何问题,是不是好的,那紧接着我们再来输大写的Z到A,这个又怎么办呢?来同学们,为了好看,我来一个换行,就这样子,这们不用每次换行啊。打一个空格,这样好看,你看这样看起来比刚才那个样看起来舒服一点,为什么呢?因为他在同一行。
10:05
是不是在同学看起来比较比较比较舒服,是不是看起来比较舒服啊。好,我们再来输出下一个。这次呢,它输出的是什么呀,同学们,这次他输,他要求输出的是这样一个东西。是大写的。Z到A,好了,那现在呢,我给同学们演示一下。这次呢,咱们这样写在上面先定一个C2。没问题吧,然后for循环拿下来怎么改呢?我们上来过后给这个C2附一个大写的Z。对不对,那现在呢,我们反过来写,只要C2。大于等于大写的A就行,因为根据阿斯柯玛来说,Z。比A要大是不是,然后这边呢,C2咱们这次怎么处理啊减减。因为你是逆序打印嘛,所以我就减解,减解完了过后这边呢,我朋友们这样写成C2。
11:06
好,这边呢,咱们就OK了,For循环这边少了一个分号,好单位就写完了。大家看这里面呢,是一个比较巧妙的使用方法,就是说我先付一个大Z,然后呢,C2减减,就它在逐渐的减小。但是呢,它必须要满足大于等于A我才去输出,否则我就退出了。同学们,我们运行一下,看看能不能把大写的这道A给大家输出,你看没有问题。一样的是不是好,你去打印,那同学们关于这道题,我们就评讲到这里最后一道题。来看一下,这道题呢,稍微的需要同学们动下脑筋,也不是很难,但是呢,要动动脑筋哈,来看一下。下面这道题是求什么呢?求一减一除以二加上一除以三减一除以四,以此类推,那这个规律大家有没有看到?
12:00
第一个是减,第二个是加,第三个是减,后面又是加了。那现在我们来分析一下怎么找规律,分析找到规律,找到算式的规律。规律,并求解。并求解。这是老师的一个要求,那现在我们来玩一把,这样写。那你想一想,你拿到这个题,你怎么来完成呢?首先得找规律,所以说我们思路分析。对,思路分析,我开始这样来分析啊,首先你们可以看到这个结果。这个。是不是可以看成这样一个形式,怎么写呢?看我写一下一除以一。看清楚了没有减。减一除以二看清楚没有加。加一除以三规律是不是已经找到了减?一除以四。对不对,到点点点点后面呢,该怎么写就怎么写。
13:00
是不是后面是一除以100。那同学们看到这个规律是什么呀?同学们看这个规律是什么?规律是这样,是这样的奇数。就是基啊基数。你们有没有发现?就是如果是,呃,如果它的分母啊。啊,它的分母为奇数。它的分母为奇数,前面是正数,这样写分母。分母为奇数,为奇数,则。则符号在,这个符号是一个正数。如果分母是一个偶数。看到没有,分母是一个偶数。那么它的这一个符号呢,其实是一个减号。是不是是一个减号。能理解好这个规律咱就找到了,那现在呢,老师就开始来写这个东西了啊呃,首先我们定义一个变量。
14:03
啊,比如说这个叫做sum来统计。对,来统计它的和。那现在老师就开始写了double。什么样呢?Sum等于0.0。是不是初始化,然后呢,现在我们就来负循环。对,我现在肯定要用一个I来控制它的次数,I我们初始化呢。对,等于一吧,等于一,那这边我也写1I等于一啊,这边你如果不出的话,下面写个一也是可以的哈,就这样写也行。I等于1I呢?I小于多少?小于等于。是不是100,因为你分母最大为100嘛,然后呢,咱们来I加加看清楚没有。好,现在同学们看,我就开始来判断如果,如果I是一个奇数。
15:01
那就这样写,如果I怎么样呢?I模我们的二不等于零。不等于说明它是奇数吧,如果是奇数的话呢,咱们这个sum就加等。I加等什么呢?一也就加等一除以I能看懂吗?甲等。呃,加等一除以I,但是这个地方要小心,呃,就是。这个I呢,它是一个。I它是一个整数,一也是一个整数,那。你你这样整数相除相等的话,它它往往很往往是零,就没有小数位了,所以说为了保证这个地方呢,咱们写个1.0,这点特别重要注意。注意考虑保留小数位,这个要写成1.0,而不是一。能理解不好,二是不是就是偶数位了,偶数位是减,因此呢,把这个拿过来。
16:03
把它拉过来减掉。一个这个字,代码就写完了。待会就喜欢,那最后呢,我们把这个结果输出一下print f来同学们玩一把,我们说一下sum等于第二保留小数点两位输出。代码写完,Get char。同学们,我们来生成一下这个解决方案。生成一下这个解决方案,看对不对。完全的OK,那现在呢,我们来运行之。好,结果是0.69。0.69应该是对号应该是对,同学们可以去试一试,但是同学们看,如果我这边写的不是1.0,而是一,这个结果跟我想的就完全不一样,大家可以考虑这个结果是什么。对,假设你写的是一点呃,一,而不是1.0。那看这个结果是什么样子的。就一这个显然不对哈,这肯定是不是我们想要的结果。好了,同学们一定要把这个1.0写上,不要写成一。
17:03
各位,那关于我们这一个综合练习就给大家评价,这里我们把它梳理一下。我们一共呢,讲了这么些题,我们梳理梳理好不好。来,走一下。往下拉。往下拉。好,这是我们的课后综合练习。那我们一共做了这么多题,我们看看具体来说是怎样子的。先看这。前面的四道题。对,四道题。处理一下。第一个题呢,要你们自己去做,第二个,第三个是不是是个水仙花题,我给大家把题拿过来。是不是在这里啊?水仙花题的一个答案是在这儿。是这个地方,我给大家把注解打开,并且把解决方案给同学们板书过来。呃,便于同学们今后的一个复习和和这个了解哈。好,放这,这是水仙花图。
18:02
那紧接着呢,输出这个结果,这个题是应该让同学们给大家分析了一下而已啊,这个并不难,没有输出很简单。把它给同学们插一个表格好。代码写完第五个啊,第五个第五个题,第五个题呃,我没有没有去做,因为是在前面其实做了一个类似的题,所以说我就没有带他做了,第六个题应该是评讲过的。就是求。每个月某一年的某月是多少天的问题,那把这个题呢给他拿过来。很简单,在哪里呢?在这这个位置是不是这道题啊。好,从这给大家截取到我们的笔记中做一个梳理。反税了。找主函数。这是第六题,接着继续往下看。第七题。好,我们把这个先拿过来哈,拿过来。就是789,第七题呢,让同学们自己去做,第八题提示大家用Switch加穿透。
19:05
就可以搞定。第九题。第九题是什么题?怎么没有东西呢?啊,看代码输出什么。这个题是应该给大家玩了一把的。我整理一下第九题啊,上面去。第九题,第九题呢,我把这个答案和分析给大家板书过来,第九题应该是在这讲的,对吧。这个地方好,这是我们的这个第九题的一个分析这里。对了。第九题的一个分析,最后我们说出输出来是B1等于零,B2等于一,就是说在这方改改了过后的基础上,如果是等于零的话啊,如果两个相等的话呢,呃,实际上是输出两个零啊,这个呃我就不去再说了,好把这个答案。给各位朋友板书到笔记中去,很简单。第九题说完了第十题,第十题我们接着梳理。
20:02
第十题呢,也是一个让你说输出代码,这段代码输出什么的一个题。那经过我们这个分析呢,经过我们这个分析,我们说这个方会输出一输出一次执行读语句,通过这个题我们可以看到Y语句和do y语句的区别,Y语句是先判断再执行,所以它有可能一次都不执行,但do y呢,即使你这个A小于二不成立,但是它已执行了一次。对吧,好,第11题。第11题。和12题,13题,我们都一次性的拿过来吧。好。呃,12 11题是同学们自己去做,12题我给大家。做了一下,把它拉过来,12题应该是在这开始来完成的。同样给大家反思过来。这是12题的答案。
21:00
非常简单哈,就是要考虑这里面我们用到了一个,用到了一个特点,哪个特点呢?就是我们的char,它也可以当做一个整数来使用,因此它可以加加,也可以减减。第13题。第13题,这个题的一个核心点就是要分析出来它的特点,否则你是做不出来的,一定要分析出来哦,它其实这这个东西等价于这种写法。然后找到规律,分母为奇数的时候,符号为正数,分母为偶数的数是。那个复述这样子呢,这个题就得到了一个解解决。好,我把这个题也给同学们反思过来。这是我们的第13题。贸易的。主函数翻过来。各位同学,那关于我们就是程序最重要的这一部分,就是程序流程控制。的讲解就告一个段落,包括这些练习题也给大家大部分,绝大部分都已经评讲了,那么我的建议是,同学们一定要把老师布置这一题,一定要去念一念,敲一敲,如果你不去写,这个效果肯定是非常差的。
22:13
好,关于这一讲,我们就给同学们讲到这里。
我来说两句