00:00
好,同学们,我们来继续看下面的代码,好吧,我们来继续看下面的代码,下面呢,我们来看设计题。还是老规矩,我们先把这个题呢拿过来,设计题就涉及到编程了,对不对?好,我们一样按照前面的思路,一边一边分析一边写代码。我们新建一个文件。咱们新建一个文件叫exam。幺零杠零三没问题吧,同学们。然后呢,把后缀我们调整成C。把代码放过来,先还是把题进行一个阅读,我们看看这个题的要求是什么哈,要求是什么?他说请编写一个函数,放其功能一定要理解它要干什么事情,将S所指向的字符串,那S一看就应该是个指针的,你看它是怎么说的呀,他将S所指向的字符串,那S肯定就是一个指针。
01:00
呃,指向的字符串中下标为奇数的字符删除,诶,有点意思了,他要把下标为奇数,那就135这样的下标的字符删除,串中剩余的字符形成的星串放在T所指向的数组中,那T呢,要么是一个数组,要么也是个指针。例如他给了一个案例,很好理解了,当S所指向的字符串内容是这个的时候,则在T所指向数组中的内容应该是sead,为什么呢?大家看。因为他要把奇数的字符删掉,那这个I就被干掉了,这个I被干掉了,过后这个G被干掉了,这个H被干掉了,这个I被干掉了,这个D被干掉了,剩剩下的就是这个东西了,也就他把下标为基数的就删除掉。然后呢,他说部分源码已经给出了,不能改动主方法,然后其他函数也不能动,仅仅在放函数里面添加若干语句完成功能,同学们,那现在呢,这一个老规矩吧,我们来做一个分析,然后呢写代码就可以了,我们首先看到哈,下面这就很简单,一两个字,字符数组已经给你了,然后他让你输一个S。
02:16
输这个S呢,待会儿我们就输这个字符串好不好给它往那个调用放函数完成处理,最后输出来过后呢,输出的是T,看清楚了没有,注意你这个地方没不会去修改S哈,再说一遍,S本身并不会变化,S本身并不会变化,它相当于说把S的一部分数据拷贝到这个T里面去了,哪些部分呢?偶就是下标为偶数的。那一部分其他的就给删掉了,所以说这边我们就能理解它的含义了,那么我们来做一个分析。第一个呢,就是呃,传入。啊,传入一个字符串。
03:01
S啊,假定是S,然后呢,将S中。中的下标为奇数。激素。的这个字符删除。删除。啊去掉好像叫去掉。去掉。去掉,然后拷贝到哪里去呢?拷贝到体重应该是这样理解。是不是这样理解是比较合理的,或者付给他?当然有些同学说我不一定是拷贝付给他可不可以也行,就付给他吧。去掉,然后付给什么呢?付给这一个T就可以了,就先把就相当于说把这个奇数的字符量去掉,或者叫做过滤掉啊,这个也可以叫过滤过滤掉。负给T,那这个思路就很清晰了,那我们的思路应该怎么办呢?肯定是要用for循环的,肯定使用for循环。For循环。对不对,For循环处理什么呢?处理我们只处理什么呢?处理这个下标为偶数的就可以了,是不是处理下标为偶数的。
04:11
即可。偶数的即可。对不对,包含零,包含下边零就OK了,那下面我们就来开始玩了,既然你是个破循环,那你首先肯定是破循环,便利谁呢?肯定是肯定是变离S嘛,肯定变利S,所以说我这样写了,首先咱们写一个int I能理解吧,再来一个解等于零。然后呢,我们是不是要把它的长度统计下来,就是S这个字符串的长度我们要统计下来。就S字符串长度呢,我们用string内没问题吧,把S放进去。因为我要变列S,我当然要求到它的长度了,然后下面呢,我就可以开始做循环了,I等于零,I小于谁呀?I小于什么呢?I小于S,那注意长度本身,比如说你有四个字符,但是你下标其实只能到长度减一,所以说这这个地方不能等哈,只能是小于,能理解吗?I加加。
05:14
I加加好,现在我们这样加的话呢,我们就要这样去。处理了怎么写呢?如果。大家能理解这意思吧,呃,就是如果什么呢?如果I磨上一个二。段雨林爱国同学。如果这个条件满足,是不是这个就是我们要去处理的呀,因为它是它就偶数了嘛,相当于零,我们认为是偶数了吗?零模二也是零,一模二等于一,就不去处理二模二,哎,这个是可以的,因此这边就搞定,怎么办呢?就T。看清楚了解加加放进去给它附一个,附一个串,呃,附一个字符进去,就是哪一个SI看懂了没有付给他。
06:05
哎,这个地方就是相当于我把I把的字符。字符付给谁呢?付给T节哦,T节为什么是T结呢?是我这个节是加,加是放在后面的啊,因为你原先是零,说第一次是给了零,然后自己再自增负给T结,然后结再自增。对,然后哦,然后结再自证一下。注意千万不要写反了,不能这样写,不能写这样写,这样写就错了,这样写的话,你第一个零字符零,下边为零,就没有负值了,所以说一定是结加加放后面明白好,那么整个这个for循环结束以后,朋友们是不是你还来一个分尾呀?当注意听当for循环结束后,结束后给给谁呢?给这个T,给这个T啊,这个字符数组。
07:07
啊,加一个结束标志,加上结束标志。这个结束标志还知道是怎么加的吗?是不是这个是应该是结就可以了,不要乱写啊,因为你这个整完了过后,这个结其实是指指向到后后一位的,是不是后一位呀。肯定是后一位嘛,然后呢,等于一个斜杠零就OK了,代码写完了,朋友们,代码写完这就是一个处理,那处理过后我们看看到底行不行呢,来同学们玩一下。为了看到这个效果呢,我们来给大家测试一下好不好。来一个吧,运行起来。那运行起来过后呢,老师也不去想别的东西了,咱们就用这个串好不好,然后呢,待会我们看看结果和我们想象的是否一样,粘贴一下。放进去回车。各位同学看对不对呀,Send完成代码是正确的,回撤结束。
08:03
好,那现在呢,我们把这两个添加的get char拿掉,把它放在我们的哪里呢?放在我们的这个试卷里边就OK了。放进去,这是分析及解答。没问题吧,同学们。各位,那关于我们第十套题的讲解就OK了,我把它板书到我们这个笔记中去。往下走,这样呢,利于大家以后只看一个笔记就可以了,不用,呃,这这个地方也来看一下,那个地方来看一下,对不对,我们都把它汇总到我们一个笔记里面去,便于同学们今后的复习。走一个。这是我们的第十套操作题。老规矩,先把图片发过来。对,弄过来,然后呢,我们把试卷拿过来。C语言真题第十套。试卷。试卷。给他来一个小的箭头。
09:02
然后我们加入一个表格对不对。把这边的带,把这边分析的第十套的整个分析和解答呢给大家。拿到我们表格里面去。OK。好,放一下就可以了。同样把格式带上。各位同学,各位同学。一怎么没有各位同学那关于第十套题,第十套题的讲解和整理呢?就给大家说到这儿,大家一定要去多多做题,只有多通过多做题,同学们将来在考试的时候呢,才会显得游刃有余,一定要多去做,多去想。好吧,各位这一讲我们就到这里。
我来说两句