C语言I博客作业06

这个作业属于那个课程 C语言程序设计II
这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/SE2020-4/homework/11555
我在这个课程的目标是 <学会并熟悉多分支结构switch语句的使用>
这个作业在那个具体方面帮助我实现目标 <让我们对pta上的作业进行分析与说明,代码互评以及最后的学习总结>
参考文献 <C语言程序设计、百度>

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

1.1 7-3 计算天数 (15分)

本题要求编写程序计算某年某月某日是该年中的第几天。
输入格式:
输入在一行中按照格式“yyyy/mm/dd”(即“年/月/日”)给出日期。注意:闰年的判别条件是该年年份能被4整除但不能被100整除、或者能被400整除。闰年的2月有29天。
输出格式:
在一行输出日期是该年中的第几天。
输入样例1:
2009/03/02
输出样例1:
61
输入样例2:
2000/03/02
输出样例2:
62

1.1.1数据处理

数据表达:整型int、字符型函数表达scanf()、printf()、字符型变量yyyy、mm、dd
数据处理:运用了switch语句来处理该题的多分支,逻辑表达式((yyyy % 4 == 0) && (yyyy % 100 != 0)) || (yyyy % 400 == 0)

1.1.2实验代码截图

1.1.3 造测试数据

输入数据 输出数据 说明
2008/07/08 190 该日期是该年中的第190天
2012/05/04 125 该日期是该年中的第125天
2012/02/16 47 该日期是该年中的第47天
2014/08/11 223 该日期是该年中的第223天
2014/01/23 23 该日期是该年中的第23天

1.1.4 PTA提交列表及说明


1、编译错误:程序一开始未编译正确,原因是闰年的判别条件不知道如何去表达出来,也在Devc++编译多次
2、答案错误:程序运行时,答案输出有误,经过不懈努力终于将程序写出来了,结果却由于粗心而发生错误,不是有些地方的符号不小心换成了中文输入就是某些字符写错了。

1.2 7-5 多分支表达-倍数问题 (50分)

键盘输入1个正的整数A,如果A是3的倍数但不是5的倍数,则输出A除以5的余数。如果A是5的倍数但是不是3的倍数,则输出A除以3的余数。如果A既不是5的倍数但也不是3的倍数,输出A除以15的余数
输入格式:
1个正整数
输出格式:
如果是3的倍数但不是5的倍数,则输出A除以5的余数。 如果A是5的倍数但是不是3的倍数,则输出A除以3的余数。 如果A既不是5的倍数但也不是3的倍数,输出A除以15的余数。 如果A不是正整数,没有任何输出。
输入样例:
18
输出样例:
3

1.2.1数据处理

数据表达:整型int、字符型函数表达scanf()、printf()
`数据处理:运用了省略else的if语句, 关系表达式(A%3==0 && A%5!=0)

1.2.2 实验代码截图

1.2.3 造测试数据

输入数据 输出数据 说明
21 1 该数是3的倍数但不是5的倍数,则输出A除以5的余数为1
27 2 该数是3的倍数但不是5的倍数,则输出A除以5的余数为2
35 2 该数是5的倍数但不是3的倍数,则输出A除以3的余数为2
40 1 该数是5的倍数但不是3的倍数,则输出A除以3的余数为1
19 4 该数既不是5的倍数也不是3的倍数,则输出A除以15的余数为4

1.2.4 PTA提交列表及说明


编译错误与部分正确:看题不仔细,忽略了当A既不是5的倍数但也不是3的倍数,是输出A除以15的余数,而我是输出A除以其他任意数的余数。

2.代码互评(5分)

同学代码截图


自己代码截图



同学代码与自己代码不同之处:
1、在求多分支表达-倍数问题的时候,同学代码定义了变量x,紧接着执行if-else语句;而我没有再定义其他的变量,紧接着执行省略else的if语句。
两者代码都思路清晰,简单明了。
2、在计算天数的问题的时候,同学在switch语句中,在case常量表达式里,直接就是一个相加得出来的和,而我把相加的天数式子都给列了出来。相比而言,同学的代码显得更加的简短,而我的思路显得更加清楚。

3.学习总结(15分)

3.1 学习进度条(5分)

周/日期 这周所花的时间 代码行 学到的知识简介 目前比较迷惑的问题
第三周 三天 130 使用for循环语句实现循环程序的设计 有时程序中表达式写不对而出错
第四周 三天 135 调用和定义函数 对调用函数不是很清楚以及如何去定义函数
第五周 三天 148 分支结构if-else语句、逻辑运算符的运用 有部分函数的功能以及准确的调用自己所定义的函数不太清楚
第六周 两天 150 多分支结构switch语句的使用 优先运算级别常常未注意而导致程序运行出错

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

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

3.3.1 学习内容总结

3.3.2 学习体会

1、在本周的学习过程中,我又一次增加了自己的知识,学会了多分支结构中的switch语句。这对我来说是一个小小的进步,但还是存在着许多不足,经常会犯一些错误。老师课堂讲的非常的细致,让我们都能够把知识点都理解到位,我相信每天进步一点点,会有自己意想不到的收获。
2、无论是编程还是做其他事情,首先一定要认真细心,容不得半点马虎,我们一定要多去实练,只有在不断练习当中我们才能取得进步。
3、课堂的时间是有限的,我们需要在课后花时间去复习巩固课堂所学,甚至进行扩展,多花时间去练习。多向懂得多的同学去请教,认真完成好每一次作业。

posted @ 2020-11-27 22:00  花开宿语  阅读(140)  评论(6编辑  收藏  举报