| 问题 | 答案 |
|---|---|
| 这个作业属于那个课程 | C语言程序设计II |
| 这个作业要求在哪里 | C语言I作业08 |
| 我在这个课程的目标是 | 学会C语言 |
| 这个作业在那个具体方面帮助我实现目标 | 熟悉使用while和do-while结构解决问题。 |
| 参考文献 | c语言作业评价标准 |
一、PTA实验作业
1.1爬动的蠕虫
题目描述:条蠕虫长1寸,在一口深为N寸的井的底部。已知蠕虫每1分钟可以向上爬U寸,但必须休息1分钟才能接着往上爬。在休息的过程中,蠕虫又下滑了D寸。就这样,上爬和下滑重复进行。请问,蠕虫需要多长时间才能爬出井?
这里要求不足1分钟按1分钟计,并且假定只要在某次上爬过程中蠕虫的头部到达了井的顶部,那么蠕虫就完成任务了。初始时,蠕虫是趴在井底的(即高度为0)。
1.1.1数据处理
数据表达
| 变量 | 变量来源 | 变量类型 |
|---|---|---|
| u | 题目输入 | int |
| d | 题目输入 | int |
| n | 题目输入 | int |
| s | 爬行位移 | int |
| i | 题目输出 | int |
**数据处理:
while s<n do
i<--i+1
s<--s+u
if s>=n then break
i<--i+1
s<--s-d
end
1.1.2 实验代码截图

1.1.3 造测试数据
| 输入数据 | 输出数据 | 说明 |
|---|---|---|
| 8 5 8 7 6 9 1 3 10 |
9 3 6.5 | 样例一 |
| 8 15 18 7 6 9 1 3 10 |
18 3 NONE | 样例二 |
| 5 24 6 18 33 96 |
5 NONE NONE | 全是3k型 |
1.1.4PTA提交列表及说明

题目比较简单,一次就过了。
1.2 求整数的位数及各位数字之和
题目描述:对于给定的正整数N,求它的位数及其各位数字之和。
1.2.1数据处理
数据表达
| 变量 | 变量来源 | 变量类型 |
|---|---|---|
| n | 题目输入 | int |
| a | 题目输出 | int |
| i | 题目输出 | int |
数据处理:
while n>0 do
a<--a+n%10
n<--n/10
i<--i+1
end
1.2.2 实验代码截图

1.2.3 造测试数据
| 输入数据 | 输出数据 | 说明 |
|---|---|---|
| 321 | 3 6 | 样例 |
| 1 | 1 1 | 最小n |
| 999999999 | 9 81 | 最大n |
| 10000001 | 8 2 | 中间有连续的0 |
1.2.4 PTA提交列表及说明

1,答案错误:未给a赋初值0,经过调试,发现了问题。
二、代码互评
| 我的 | 同学一 | 同学二 |
|---|
与同学一相比
(1)我在定义的时候就赋了值。
(2)他在使用if语句,使用了表达式e=e,再交给while判断,而我直接使用了break
与同学二相比
(1)他使用for循环,而我使用了while
(2)他在for循环当中使用了if-else语句,显得有些繁琐。
3.1 学习进度条
| 周/日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 | |
|---|---|---|---|---|---|
| 第一周(9.19-9.27) | 2小时 | 10 | 代码的基本输出 | 什么时候该空格 | |
| 第二周(9.27-10.4) | 24小时 | 30 | 华氏温度转换和GCC编译器编译文件 | 如何进行输入 | |
| 第三周(10.4-10.11) | 24小时 | 100 | 关系运算、if-else语句、格式化输入语句scanf(),以及常用的数学库函数 | 对一些数学符不熟 | |
| 第四周(10.11-10.18) | 20小时 | 120 | 使用for循环语句实现指定次数的循环 | 不能快速找出错误 | |
| 第五周(10.18-10.25) | 16小时 | 130 | 编写函数 | 调试有点不熟悉 | |
| 第六周(10.25—11.1) | 30小时 | 500 | 多分支结构、字符型数据类型和逻辑运算符 | 表达式的定义,上面的表达式好像是算术表达式,好像其它类型的表达式,认识得不清楚 | |
| 第七周(11.1—11.8) | 35小时 | 700 | 多分支结构switch语句 | 数组的使用 | |
| 第八周(11.9—11.16) | 32小时 | 400 | 熟悉使用while和do-while结构 |