C语言I博客作业06

作业头

这个作业属于哪个课程 C语言程序设计II
这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2020-4/homework/11559
我在这个课程的目标是 学会switch语句,本次作业拿到满分
这个作业在那个具体方面帮助我实现目标 作业的严格要求和PTA的精选题集
参考文献 《C语言程序与设计》,百度
学号 20209078

1.PTA实验作业(20分/题)

1.1 前天是哪天

在一行中输入年、月、日。(日期为有效日期)

1.1.1 数据处理

数据表达:定义了整形变量y,m,d,sum。
数据处理:表达式:【switch(m-1){case m: sum = x; break; }】、m表示月数,x表示该月的天数。再利用if语句分别写出day>2、day<=2,month=1、day<2&&month=3 year为闰年、day<2&&month=3 year为非闰年的情况。

1.1.2实验代码截图

1.1.3 造测试数据

输入数据 输出数据 说明
2020 10 16 2020-10-14 day>2
2020 1 2 2019-12-31 day<=2,month=1
2020 3 2 2020-2-29 day<2&&month=3 year为闰年
2019 3 2 2019-2-28 day<2&&month=3 year为非闰年

1.1.4 PTA提交列表及说明

提交列表

提交列表说明:

1.编译错误:输入法问题,引号全打的中文。一度认为只有一部分所以提交了三次,过于自信了emmmmm...
2.部分正确:if的顺序不同导致的,看来要更严谨一点才行。改了我好久。大意了,我没有想。
3.答案正确:更正后答案正确。

1.2 计算天数

输入在一行中按照格式“yyyy/mm/dd”(即“年/月/日”)给出日期。注意:闰年的判别条件是该年年份能被4整除但不能被100整除、或者能被400整除。闰年的2月有29天。

1.2.1 数据处理

数据表达:定义了整形变量y,m,d,days和一维数组a[]。
数据处理:利用if判断是否为闰年并替换二月的天数。再通过for循环将数组里单个数相加,再与输入的数值相加得到总天数。表达式【for(int i=0;i<m-1;i++){days+=a[i];}days+=d;】

1.2.2 实验代码截图

1.2.3 造测试数据

输入数据 输出数据 说明
2009/03/02 61 非闰年跨2月
2000/03/02 62 被400整除的闰年跨2月
2020/03/02 62 普通闰年跨2月
1900/05/20 140 被100整除的非闰年跨4月(大小月)
2013/10/20 293 非闰年跨9月(7-8月大)
2012/2/20 51 闰年1月
2013/2/20 51 非闰年1月

1.2.4 PTA提交列表及说明

提交列表

提交列表说明:

1.部分正确:没有系统地学数组,不知道a[i]是从a[0]开始还是a[1]开始,之前一直写的是if(y%400==0||(y%4==0&&y%100!=0)) a[2]=29;
2.编译错误:其实只能算一次,因为我提交后没看清提示就把它关了,后面只好再提交一次。其实就是移动语句的时候漏了一个;在下面。
3.答案正确:答案总算对了啊。

2.代码互评(5分)

  • 同学代码截图
    同学一的作业

同学二的作业

  • 自己代码截图

  • 比较:
    1.同学一的代码利用了数组,代替了switch,很强。
    2.同学二的代码则相对长了。挺佩服他的,居然分情况一个一个地输出,确实也免去了讨论天数小于2的情况。有参卡价值。就是挺累人的
    3.我用的是这周学的方法,也有可取之处。就是看起来很长。

3.学习总结(15分)

3.1 学习进度条(5分)

周/日期 这周所花的时间 代码行 学到的知识点简介 目前比较迷惑的问题
10/12—10/18 40h 581 printf(),scanf()的用法,if-else的用法
10/19—10/23 33h 617 for循环
10/24—10/25 13h 262 do...while循环
10/26—11/1 15h 458 自定义函数
11/2—11/8 19h 144 pow(),sqrt()函数
11/9—11/15 14h 597 函数 如何改错,会调试了还是很慢,不熟练
11/16—11/22 21h 241 分支结构 函数递归?还有如何替换字符串。C(gcc)和C(clang)的区别,什么情况叫做数组越界
11/23—11/29 29h 868 switch语句 我也不知道我从哪开始就懵了

3.2 累积代码行和博客字数(5分)

时间 博客字数 代码行数
第一周 1951 879
第二周 1994 458
第三周 6917 144
第四周 1924 597
第五周 4553 641
第六周 3792 868

3.3 学习内容总结和感悟(5分)

3.3.1 学习内容总结

3.3.2 学习体会

学习内容总结:

  • 本周我们学习了switch循环,避免了多分支时用十多个if导致的麻烦。

感悟:

  • 不管题目难度如何,我都很难一次性做对,有点依赖PTA的提交结果了啊,一般我都是靠着它的提示改错的。看来我要多练练了啊。(估计又要下次一定了)
  • 最近应该是飘了,总是好高骛远然后又搞了一些小事情,关键是同学和我自己都感觉我睡不醒,这就挺难受的,总感觉没什么收获。
  • 毒鸡汤喝了不少的感觉,话说我最讨厌的就是高三开会说的什么迷茫期啊,瓶颈期啊,疲劳期啊。感觉太理论化,就很厌恶。不过我感觉我现在确实挺迷茫的,也不积极了,至少目前是寝室熄灯了还要我看代码一眼是根本不可能的了。
posted @ 2020-11-26 14:23  岚影  阅读(223)  评论(6编辑  收藏  举报