C语言I博客作业08
一、本周教学内容&目标
第4章 循环结构 4.1-4.2 熟悉使用while和do-while结构解决问题。
二、本周作业头
| 问题 | 答案 |
|---|---|
| 这个作业属于那个课程 | C语言程序设计II |
| 这个作业要求在哪里 | http://edu.cnblogs.com/campus/zswxy/CST2019-4/homework/9979 |
| 我在这个课程的目标是 | 学习使用while和do-while结构 |
| 这个作业在那个具体方面帮助我实现目标 | 提供作业格式要求,while的运用方法 |
| 参考文献 | Visual Studio2019,c语言教材书 |
三、本周作业
-
1.PTA实验作业
-
2.代码互评
-
3.学习总结
四、作业格式
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
求整数的位数及各位数字之和
- 对于给定的正整数N,求它的位数及其各位数字之和。
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等可以减少我们的错误次数
- ③ 还需加强代码运用和熟练程度









浙公网安备 33010602011771号