问题 | 回答 |
---|---|
这个问题属于哪个课程 | C语言程序设计II |
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2019-4/homework/9979 |
我这个课程的目标是 | 学会使用do-while、while语句,能准确分辨目标适用while还是do-while |
这个课程可以在哪个具体方面帮助我实现目标 | 完成pta上的代码作业 |
参考文献 | C语言程序设计(第3版)、C Prime Plus(第6版)中文版 、百度 |
1.PTA作业
1.1 爬动的蠕虫
一条蠕虫长1寸,在一口深为N寸的井的底部。已知蠕虫每1分钟可以向上爬U寸,但必须休息1分钟才能接着往上爬。在休息的过程中,蠕虫又下滑了D寸。就这样,上爬和下滑重复进行。请问,蠕虫需要多长时间才能爬出井?
这里要求不足1分钟按1分钟计,并且假定只要在某次上爬过程中蠕虫的头部到达了井的顶部,那么蠕虫就完成任务了。初始时,蠕虫是趴在井底的(即高度为0)。
1.1.1 代码截图
1.1.2 提交列表及说明
1.编译错误:按错shift键键盘变为中文键盘输入的“;”为中文型(改正为英语型分号)
2.部分错误:忽略虫子爬的距离和井深相等的情况(将sum>N改为sum>=N)
1.1.3 数据处理
数据表达:使用while语句比较上升距离与井深,又使用if-else语句判断是否需要计算下降的时间和距离 数据参数:在开始就定义了int型参数 N, U, D, sum, t;其中N, U, D为形参,sum,t为实参
1.1.4 造测数据
输入数据 | 输出样例 | 说明 |
---|---|---|
12 3 1 | 11 | |
23 6 2 | 11 | |
15 4 3 | 23 |
1.2 韩信点兵
在中国数学史上,广泛流传着一个“韩信点兵”的故事:韩信是汉高祖刘邦手下的大将,他英勇善战,智谋超群,为汉朝建立了卓越的功劳。据说韩信的数学水平也非常高超,他在点兵的时候,为了知道有多少兵,同时又能保住军事机密,便让士兵排队报数:
按从1至5报数,记下最末一个士兵报的数为1;
再按从1至6报数,记下最末一个士兵报的数为5;
再按从1至7报数,记下最末一个士兵报的数为4;
最后按从1至11报数,最末一个士兵报的数为10;
请编写程序计算韩信至少有多少兵。
1.2.1 数据处理
数据表达:使用了 逻辑表达式“N%5==1&&N%6==5&&N%7==4&&N%11==10”来判断N是否符合条件
数据参数:定义了int型参数N,同时N也是实参
1.2.2 代码截图
1.2.3 提交列表及说明
说实话写出来才明白这个题只有10分,相比而言这个好简单
1.2.4 造测试数据
输入样例 | 输出样例 | 说明 |
---|---|---|
此题无需输入 | 2111 |
2.代码互评
自己代码 | 同学代码 |
---|---|
1.同学使用了for语句证明了此题需要使用循环语句来运行,同时for语句里面使用了一种简单(懒汉)方法
2.代码换行没有按照格式,没有将花括号单独成行
3.学习总结
3.1 学习进度条
周/时间 | 本周所花 | 重要知识点 |
---|---|---|
第一周/09-20 | 4h+ | 简单打印字句 |
第二周/09-28 | 4.5h+ | 《提问的智慧》 |
第三周/10-08 | 9h+ | if-else语句的使用、数字的定义、分数函数的应用 |
第四周/10-15 | 6h+ | for循环语句及其使用 |
第五周/10-22 | 6h+ | 调用简单函数 |
第六周/10-29 | 7h+ | 分支结构、字符型数据的类型及其输入与输出、逻辑运算符 |
第七周/11-05 | 10h+ | switch语句的使用 |
第八周/11-12 | 9h+ | while语句、do-while语句 |
3.2 累计代码行与博客字数
3.3 本周学习总结和感悟
3.3.1 学习内容总结
3.3.2 学习体会
1.无论是while语句、do-while语句还是for语句都是循环语句,但是while语句的适用面更广也更简单
2.while语句要先执行“语句块”再判断表达式是否为真来决定是否继续循环
3.pta的第三题目前我还没找到解决的方法,有时间需要去找同学讨论一下