这个作业属于那个课程 | C语言程序设计II |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/SE2019-3/homework/9982 |
我在这个课程的目标是 | 学会自己编写程序,熟练掌握while语句 |
这个作业在那个具体方面帮助我实现目标 | 学习怎么使用while语句去编程 |
参考文献 | C语言程序设计教科书 |
1.PTA实验作业
1.1 韩信点兵 (10 分)
在中国数学史上,广泛流传着一个“韩信点兵”的故事:韩信是汉高祖刘邦手下的大将,他英勇善战,智谋超群,为汉朝建立了卓越的功劳。据说韩信的数学水平也非常高超,他在点兵的时候,为了知道有多少兵,同时又能保住军事机密,便让士兵排队报数:
按从1至5报数,记下最末一个士兵报的数为1;
再按从1至6报数,记下最末一个士兵报的数为5;
再按从1至7报数,记下最末一个士兵报的数为4;
最后按从1至11报数,最末一个士兵报的数为10;
请编写程序计算韩信至少有多少兵。
输入格式:
本题无输入
输出格式:
输出韩信至少拥有的士兵人数。
1.1.1 数据处理
数据表达:定义了整型变量a
数据处理:int 总人数;
for(人数从6开始累加)
{
if(总人数同时满足除5余1,除6余5,除7余4,除11余10)
}
printf(总人数)
1.1.2 实验代码截图
1.1.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
本题无输入 | 韩信至少拥有士兵人数 | 至少拥有2111人 |
1.1.4 PTA提交列表及说明
提交列表说明
1.编译错误:因为在c++上编译没有错误,所以我就直接写了,但还是出现了编译错误,原因是if语句中漏掉一个字符
1.2 爬动的蠕虫 (15 分
一条蠕虫长1寸,在一口深为N寸的井的底部。已知蠕虫每1分钟可以向上爬U寸,但必须休息1分钟才能接着往上爬。在休息的过程中,蠕虫又下滑了D寸。就这样,上爬和下滑重复进行。请问,蠕虫需要多长时间才能爬出井?
这里要求不足1分钟按1分钟计,并且假定只要在某次上爬过程中蠕虫的头部到达了井的顶部,那么蠕虫就完成任务了。初始时,蠕虫是趴在井底的(即高度为0)。
输入格式:
输入在一行中顺序给出3个正整数N、U、D,其中D<U,N不超过100。
输出格式:
在一行中输出蠕虫爬出井的时间,以分钟为单位。
输入样例:
12 3 1
输出样例:
11
1.2.1 数据处理
数据表达:定义了整形变量n,u,d,time=0,n为井的深度,u为蠕虫一分钟爬的高度,d为蠕虫一分钟下滑的高度
数据处理:int n, u, d, time=0;
scanf(n,u,d的值)
while(n<=100)
{
n=n-u;
time++;
if(n<=0)
跳出循环
n=n+d;
time++;
}
输出时间
1.2.2 实验代码截图
1.2.3造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
12 3 1 | 11 | 蠕虫需要11分钟才能爬出 |
67 8 6 | 61 | 蠕虫需要61分钟才能爬出 |
78 9 5 | 37 | 蠕虫需要37分钟才能爬出 |
1.2.4 PTA提交列表及说明
提交列表说明
1.运行超时:开始编译的时候并没有错误,但在pta上提交后运行超时,后来又在dev-c++上运行发现结果停不下来,后来通过百度和向同学寻求帮助才解决问题
2.代码互评
同学代码1
同学代码2
我的代码
1.我的代码使用的for循环语句,而同学使用的是while语句
2.同学代码同样使用了for语句,其他方面大致相似
3.我的代码看起来更加简单,使用的知识比较基础,但是没有使用新知识
3.学习总结
3.1 学习进度条
周/日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
第九周 | 32h | 112 | 怎么使用函数定义 | 对于调试还不太会操作 |
第十周 | 30h | 128 | if-else语句的嵌入 | 对于一些题目中的公式不知道该怎么写 |
第十一周 | 21h | 120 | switch语句 | 对switch的使用还不太会 |
第十二周 | 28h | 134 | while语句 | 对while循环的条件不是很清楚 |
3.2 累积代码行和博客字数
时间 | 博客字数 | 代码行数 |
---|---|---|
第九周 | 1621 | 468 |
第十周 | 1856 | 512 |
第十一周 | 1978 | 634 |
第十二周 | 2135 | 721 |
3.3 学习内容总结和感悟
3.3.1 学习内容总结
3.3.2 学习体会
1.学习C语言快有俩个月了,我也从以前的懵懂到现在会一点基础,我感觉进步了许多,在学习中也是慢慢的体会到了C语言的乐趣
2.在这周的学习中,我们主要学习了while循环语句的使用,其中我有很多地方不是很理解,但在以后会继续努力
3.在编写代码中逻辑思维显得越来越重要,以后必须加强逻辑思维的训练