00:00
同学们,我们来看第21题到30题的选择题。先看第21题,我们一边讲一边分析,首先各位同学先看一下这个,前面这个不说了吧,N等于二,K等于零,这个没什么可说的,这个while循环大家看到没有,它是一个空循环。它是一个空循环,就他什么都不做,那么他什么时候退出呢?直到这个条件为甲,他就会退出这个Y循环干什么呢?如到到什么呢?到这个条件为甲时。为假?就就退出,Well,这一点大家分析出来了哈,然后我们看。同学们有没有发现,现在他上来过后这个K加加。K加加这个是后加加,后加加的话呢,就意味就意味着它是先去判断,然后再自增,说这个地方一定要分析K加加是后加加。
01:01
后加加是先使用K,然后再自针,好这个问题解决了,那大家看他上来过后,先去判断K是这个地方为真还是为假,因为K等于零,所以说这个条件就为假了,明白了吗?一旦这个为假,后面的就不再执行,因为我们我们讲过这个雨啊,其实它本身有短路的特点。一旦你第一个条件已然为假,那么后面就不再判断,就直接退出,明白吧,所以说这个时候呢,第一次第一次判断Y循环就退出了。就退出,但是不要忘了,但是K自真是执行了的,K自真是执行了的。执行了,但是呢,这一个N加加没有执行,就这个没有执行。没有执行好,明白这个道理过后,下面就应该知道输出什么了,K虽呃就是虽然没有进到这个Y循环里面去,呃就是没有这个空语句第一次就退出了,但是K是自证的,因此呢,这个地方K其实是等于了几呢?等于一了。
02:14
N呢,仍然是等于二没有动过。所以说答案。答案就是什么呢?一和二,那哪一个是一和二啊D,答案选D。没问题吧,也就是说选选什么呢,选择D。我们看第22题。有以下定义,语句编译时会出现编译错误的是哪一个,我们一个个的看分析。第一个肯定是正确的,没什么可说的,第二个给的是一个换行符,也是正确的,第三个是错的,这哪有这种给法呀?这个是错误的,为什么是错误的呀,因为你。两个字符。这样写肯定说错了嘛。
03:01
然后第三一个这个是什么写法,我多说一句,这个是以二进制,是以什么呢?是使用16进制的方式,16进制的。进制的方式赋值的。复制可以啊,是可以的,也就是说你们看到有一个斜杠X,然后后面给个2D,这个其实相当于给的是2D的这种16进制的一个数,给到A。没有错是可以的,所以说答案呢,就应该选哪个呢,答案就应该是选择CC,错了,其他都是对的。第23题,第23题我们看一下,第23题呢,我们来阅读一下这个题哈,他说有两个差,C1和C2 C1等于大写的A字符加上八减四,注意这也是字符。那么嗯,同学们现在要想哈,这个八减四,其实你不用去管八和四对应的阿斯柯玛是多少,因为我们以前讲过char是可以当做整数来使用的,还记得吧,所以说你第一个分析出来是什么呢?就是char。
04:19
可以当做当做整数使用。整数使用。那同学们看这句话。这句话执行完毕,相当于什么感觉呢?就相当于C1等于一个A加了一个五。加了一个四。这个能理解吗?我所以说老师你是先加八再减四,你不管那么多嘛,反正最后他要执行要加加一个八,再减一个四,四字符对应的阿嘛,相当于整体是加了一个加了一个四四嘛,那这样子的话呢,我们可以推出来C1,它如果对应对应的这个对应的这个字符来讲的话呢,它就对应这个数字来讲的话,就应该是A的阿斯克玛加上一个四,那A的阿斯克玛呢,它说等于65,所以说这个就应该等于69。
05:12
退出来了,我们再来看这句话,同学们,我们再看这句话,这句话呢。也很好理解,相当于C2等于一个。大写的A再加上一个什么玩意儿呢?八减去八字符对减八字符对应的一个阿斯克玛值减去一个五字符对应的阿斯玛值。就是加三加三的话呢,那这个C2就等于68。那么同学们。我们来看它输出C,它按照这一个字符输出,显然就相当于是A后面数四个字符,那就是A,过了就是BCDE,所以说这个呢,应该输出E。应该输出一个一,而C2呢,它是按照百分号D输出的就是数字,那就应该是68,答案应该是哪一个呢?
06:10
A答案也就是说23题,23题我们应该选的是A。答案为A,看清楚没有答案?诶,搞定同学们,我们紧接着看24题哈,24题又是一个嗯,看源代码来分析结果的题,这个题呢,我们来动动脑筋呗。他说啊,他说这句话执行什么?A等于一,然后function a。然后这个地方又输出A,诶同学们,我先问大家,这个地方应该输出几啊,这地方应该输出一,为什么呢?因为我们讲过基本数据类型的这个int是只拷贝。是不是只拷贝啊,所以说你你这个方式里面对他的修改并不会影响到这个A,因为你是传了一个值,不是按地址拷贝的,所以说我们分析出来。
07:06
第一个function a这种传递方式。A是默认是值传递,值传递,因此,因此对什么呢?对main函数的这个A没有影响。没有影响好,这是第一个分析出来,第二个我们往看里面,它在调方向A的时候呢,这边P就应该是等于。一了,然后呢,它这定义的局部变量D等于二。D加加付给这个P,好,嗯,这句话执行完毕过后,我想请问同学们,这个P等于多少呢?P其实是等于哪个呀?是它这个是后加加,因此它是先把二付给这个P,所以是P等于二,P等于二的话呢,它在输出这个地方就先输出二,因此先输出一个二,然后回头在主函数中。
08:06
同学们看主函数中,函数中因为我们讲过主函数中的这个A呢,不会受到任何影响,因为它是值传递,所以说主函数中输出的是什么呢?输出这个A其实是一,所以说这个就应该是二,一这个结果答案是哪个呢?答案就是2121就是我们的C。单是血C。紧接着同学们,我们看第25个题,第25题呢,他说以下函数find max用来是实现在数组中查找最大的值并反并作为函数值返回,其实说白了它就是找,找到数组里面最大的这一个元素并返回去,他说这个程序呢是有错误的,请问错误在哪个地方?他问的是这个意思,好,我们来看一下吧,这个题有有一点骚扰。这个题有一点骚扰,需要同学们动脑筋来解决,那么我们看一下,他这边接收一个数组。
09:08
In的N说说它上面呢,这边有个for循环。这个for循环其实就在循环我们整个这个数组看到没有,就这句话大家要分析出来。分析第一个这个循环是在便利。它在遍历什么呢?变利这个X数组看到没有,然后它的思项是什么呢?它是这样子的,先把这个mini这个值赋给max,如果发现,如果发现有有Xi大于这个max,就让这个max变值,就它这个这句话其实它是它是有含义的,它是什么呢?他说如果我们假定的假定的这个max。Max不是最大值就干什么呢?就做调整,就做调整。
10:00
调,其实这个思想是对的,因为你你这个遍历,在遍历这个数组的时候,如果我发现有一个值比max大,我就让这个max呢,变成这个对应的值,然后在便利,如果发现还有因为这个max就是当前最大的了吗?它在整个便利过程中,便利完了过后,其实这个max的的确确就是最大值,但是非常可惜他把这个max。Mini写到里面了,那就意味着每次都会去修改这个max,你本身已经把它换成当前这个数组里面便利的时候的最大值,结果呢,你又把它变成最小值了,所以说这个地方我们可以看出来它应该是什么样复制语句放错位置了。他整体思想是对的,就整体思想是对的,但是不止与放错了,那我给他说一下,他完应该怎么写啊,他应该这样写。应该这样写就没有问题了,怎么写呢?我把这个这一个语句拿过来给大家用一下,他应该这样写,把这个。
11:05
直拎到外边去就可以了。这样子是不是就对了呀,为什么呢?你想嘛,他先假定他先给这个max布了一个最小最小的值。那进来过后呢,他发现这个max是不是小于第一个啊,不管假设我们这个X是呃1233个数,假设啊,那定进来过后max。这么小肯定小于一,所以说max呢,就变成了多少呀?面变成了一,它又去变利这个N,发现二又比max大,又把这个ma克X变成二,发现后面三又比ma克X大变成三。说最后返回的其实就是最大值,但是如果他把这个max等于mini写在for one里面,这个事情就完蛋了。这个事情就完蛋了,好,所以说这个修改呢,应该是第四句的答案。写到这里,D。好的,同学们,我们看第26题,第26题呢,我们看也有点烧脑,这个题还是要动脑筋的,有一点难度。
12:08
我们来做一点分析吧。嗯,我们看第一个啊,我们我们把这个流程看完,我们就知道答案是什么了,第一句这个地方M等于一,好,这个是M等于一没问题。好,第一个N等于二,这个也没问题,也分析出来了。大家看这个地方。把一把这个M的地址付给这个PP是一个指针,所以说你分析出来过后呢,P指它是一个指针,它指向了哪一个呢?M这个能分析出来吧。然后呢,Q指向了N,这个能看到吗?Q也是一个指针。它指向了谁呢?它指向了N,没问题吧,然后R是一个指针,R是个指针,现在没有指向,R也是一个指针。是什么类型的指针,我就没有说了哈,它是一个指针。
13:06
它是一个int类型的指针,然后这个能分析出来是什么的吗?他把R,他把这个R就是R等于P,相当于说R指向了哪个呢?指向了P指向的位置,P是哪一个呀?P是指向了M,所以说它也指向了M,能理解吗?肯定是传递了嘛,大家看这句话。相当于说又让P指向了哪里呢?P指向了这个Q指向的位置,Q是指向N的,所以说P又指向了N,能看到吧。P指向N啊,别别看错了,然后呢,Q又指向RQ。指向R,而R现在指向了M,所以说Q又指向了M。好,最后我们看这个结果就行了。因为在这个过程中,我们的数值的值没有变化,所以说M和N呢,应该分这个地方,应该分别输出,最后这个结果就应该出来了,M就应该等于一没有动,N等于二没有动,而星号P。
14:13
星号P,你就看星号最后指向哪里了,星P是指向N了,那星号P其实就是取出N的值,那就应该等于二。星号Q呢?那Q是,Q是指向M,那它星号Q指就取出了M的值,M就是一个一说答案应该是12211221。当B。单。答案B,能理解吗?答案就是B。分析完B第26题,答案为B第27题好,这个这个题有点长哈,第27题。好,我们。呃,我们。我们截取一段啊,截取一段休息一下。
我来说两句