C语言I博客作业08
一、表格
| 问题 | 答案 |
|---|---|
| 这个作业属于哪个课程? | C语言程序设计II |
| 这个作业要求在哪里? | http://edu.cnblogs.com/campus/zswxy/CST2019-1/homework/9976 |
| 我在这个课程的目标是什么? | 学习并掌握C语言中while与do while的用法与区别 |
| 这个作业在哪个具体方面帮助我实现目标? | 更熟练代码的技巧性 |
| 参考文献 | 百度 C语言程序设计 作业要求 |
二、PTA作业
1、PTA实验作业

1.1 题目名

1.1.1 数据处理
数据表达:定义了N、sum、count等整型变量,其中N代表输入的数字,sum是各位数之和,count是位数。
数据处理:
do{
sum+=N%10; sum为各位数之和,通过取余来获得
N=N/10;获得下一位数
count++ 记位数
}while(N!=0)N不等于零时进行循环
printf 输出 count、sum
1.1.2 实验代码截图

1.1.3 造测试数据
|输入数据|输出数据|说明|
|1|1 1|输入一个个位数|
|45321|5 15|随机输入一个数据|
|23423444444432|14 37|输入一个较大的数据|
1.1.4 PTA提交列表及说明

部分正确:使用了两个语句,一个do -while一个while,只能进入到第一个循环中去。
答案错误:没有定好while执行的范围。
1.2 题目名

1.2.1 数据处理
数据表达:定义了N、U、D、x、time、等整型变量
数据处理:
while(x<N)总距离小于井的深度时循环
x+=N;先往上爬N
time++;时间加一
if(x>=N)一次爬出
break;停止循环
x-=U;下滑U
time++;
printf(time)
1.2.2 实验代码截图

1.2.3 造测试数据
| 输入数据 | 输出数据 | 说明 |
|---|---|---|
| 0 2 1 | 0 | 输入的井深为零 |
| 12 6 5 | 13 | 随机输入的数据 |
| 13 4 5 | 无 | 掉落的高度大于上升的高度 |
| 1.2.4 PTA提交列表及说明 | ||
![]() |
答案错误:while的范围没有理解对。
部分正确:没有考虑当一次上升就出去的情况。
2、代码互评
韩信点兵1:

韩信点兵2:

两份代码所使用的的方法不同;一种利用了for循环语句,另一个是用while语句。
三、学习总结与体会
1、学习总结
1.1 学习进度条
| 周/日期 | 这周所花时间 | 代码行 | 学到的知识简介 | 目前比较困惑的问题 |
|---|---|---|---|---|
| 第一周/9.24-9.28 | 四天 | 34 | 一些简单的编程 | 无 |
| 第二周/10.8-10.13 | 五天 | 52 | 变量分类 | 无 |
| 第三周/10.15-10.20 | 四天半 | 67 | if else语句 | 无 |
| 第四周/10.22-10.27 | 五天 | 78 | printf和scanf、定义函数 | 无 |
| 第五周/10.29-11.3 | 四天半 | 112 | if else多分支结构和逻辑便变量 | 无 |
| 第六周/11.4-11.8 | 四天 | 158 | switch语句的学习 | 无 |
| 第七周/11.12-11.15 | 三天半 | 54 | while、do-while | 无 |
| 1.2 累积代码行和博客字数 | ||||
![]() |
2、 学习内容总结与感悟
2.1 学习内容总结

2.2 学习感悟与体会
本周主要学习了while 和do-while的运用,他们和for循环语句是相同用处,但用法不同。在PTA实验作业中还是有许多错误的,许多方面还要加油!



浙公网安备 33010602011771号