一、本周教学内容&目标
第4章 循环结构 4.1-4.2 熟悉使用while和do-while结构解决问题。
二、本周作业头
三、本周作业
四、作业格式
1.PTA实验作业
1.1 题目名1
爬动的蠕虫
- 一条蠕虫长1寸,在一口深为N寸的井的底部。已知蠕虫每1分钟可以向上爬U寸,但必须休息1分钟才能接着往上爬。在休息的过程中,蠕虫又下滑了D寸。就这样,上爬和下滑重复进行。请问,蠕虫需要多长时间才能爬出井?
这里要求不足1分钟按1分钟计,并且假定只要在某次上爬过程中蠕虫的头部到达了井的顶部,那么蠕虫就完成任务了。初始时,蠕虫是趴在井底的(即高度为0)。
1.1.1数据处理
数据表达:用了a,b,c,d,e变量;d,c定义为中间运用的变量,a,b,c为输入值的代替值;a,b,c,d,e都为int型
数据处理:while语句来判断上升的距离有没有过顶部,在while语句里通过if-else语句来判断是否需要加上下滑的时间以及减去下滑的距离
1.1.2实验代码截图
1.1.3 造测试数据
输入 |
输出 |
说明 |
12 3 1 |
11 |
|
15 6 3 |
7 |
|
22 5 4 |
35 |
|
1.1.4 PTA提交列表及说明
问题:一始没有想到先满足到了顶部就不用在减去下滑的距离以及时间
解决:在提交一次后,出现部分错误,才意识到需要考虑,于是重新思考解答
提交列表说明:
- 部分错误①:一开始没有考虑到先到了就不用算下滑的时间 方法:重新思考书写代码
- **部分错误②:while的表达式位置符号有点问题,写了“>=”,没有注意到循环终止的条件。 方法:看题目的要求,考虑到循环终止的条件 **
1.2 题目名2
求整数的位数及各位数字之和
1.2.1 数据处理
数据表达:用了a,b,c变量;b,c定义为中间运用的变量,a为输入值的代替值;a,b,c都为int型
数据处理:利用while语句循环,每循环一次,定义b+1一次来确定位数,通过%10来取各位数再叠加来取各位数的和,在判断a/10是否小于0,看是否还需要进行while语句循环
1.2.2 实验代码截图
1.2.3 造测试数据
输入 |
输出 |
说明 |
321 |
3 6 |
|
555 |
3 15 |
|
68 |
2 14 |
|
1.2.4 PTA提交列表及说明
问题:在思考循环语句时犹豫了许久,位数的判断以及各位数的叠加
解决:在visual studio上先试运行程序,再在pta上回答
提交列表说明:
- **答案正确:一开始不太确定是否正确,在vs上试运行在填写在pta上的 方法:可以借助工具来简化我们的作业,如Dev c++,Visual Studio等都是好的工具 **
2.代码互评
### 韩信点兵
我的代码 |
同学代码 |
|
|
区别及相似点
- ① 同学用的为for语句,我用的是while语句,说明此题解法很多种
- ② 同学代码书写没有很严谨,还需加强代码严谨性 如:for后面的大括号需分行等
- ③ 同学的代码排版上还需自己加强些练习
3.学习总结
3.1 学习进度条
周/日期 |
这周所花的时间 |
代码行 |
学到的知识点简介 |
目前比较迷惑的问题 |
第一周 |
2+ |
27 |
c语言的初了解 |
函数的定义理解 |
第二周 |
2+ |
20 |
运用markdown来写随笔 |
markdown语法知识 |
第三周 |
4+ |
96 |
学习if-else语句的运用、scanf函数和double型函数 |
if-else语句运用的条件 |
第四周 |
5+ |
98 |
学习运用for语句 |
for语句的运用规则 |
第五周 |
5+ |
88 |
调用函数的运用,制作思维导图 |
调用函数的书写,思维导图的整理归纳 |
第六周 |
8+ |
131 |
分支函数的运用 |
分支函数的运用条件 |
第七周 |
4+ |
124 |
学会运用switch语句 |
switch语句前的定义判定 |
第八周 |
6+ |
115 |
学习运用while语句 |
while的表达式判定,循环体的书写 |
3.2 累积代码行和博客字数
3.3 学习内容总结和感悟
3.3.1 学习内容总结
3.3.2 学习体会
- ① while语句的理解,表达式以及循环体的构建
- ② 适当运用工具Dev c++,visual studio等可以减少我们的错误次数
- ③ 还需加强代码运用和熟练程度