C语言I博客作业06

这个作业属于哪个课程 C语言程序设计II
这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2020-2/homework/11557
我在这个课程的目标是 熟悉switch语句并应用到题目中
这个作业在那个具体方面帮助我实现目标 在switch语句的多加练习帮助我实现对分支结构的熟悉
参考文献 C语言程序设计,C Primer Plus

1.1 题目名1

计算天数

题目描述:

本题要求编写程序计算某年某月某日是该年中的第几天。

输入格式:

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

输出格式:

在一行输出日期是该年中的第几天。

1.1.1数据处理

数据表达:本题的变量为year,month,date,a,b,c,其中year,month,date通过输入得到,a,b,c三变量通过计算式得到,都为整型。
数据处理:运用if-else语句以及switch语句展开分支,并运用了逻辑运算符:逻辑与跟逻辑或。

1.1.2实验代码截图



1.1.3 造测试数据

输入数据 输出数据 说明
2000/6/18 170 闰年,是此年的第170天
2005/7/19 200 平年,是此年的第200天
2400/4/26 117 闰年,是此年的第117天
2121/2/21 52 平年,是此年的第52天

1.1.4 PTA提交列表及说明

提交列表说明:

答案错误:在if语句中忽略赋值的表达,将if(a==0&&b!=0||c==0)写为if(a=0&&b!=0||c==0),测试时提示错误。
解决方式:及时加上两个等号,并记住赋值的正确表达式。

1.2题目2

多分支表达-倍数问题

题目描述:
键盘输入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不是正整数,没有任何输出。

1.2.1 数据处理

数据表达:本题的变量是x,y,z,w,变量定义都为整型;其中x通过赋值而来,其他三者变量则通过x的值计算得来。
数据处理:运用分支结构中的if-else语句;其中(z==0&&y!=0)等表达式运用了逻辑运算符:逻辑与。

1.2.2 实验代码截图

1.2.3 造测试数据

输入数据 输出数据 说明
0 0不是正整数,则无任何输出
3.5 3 3.5既不是正整数也不是3的倍数或5的倍数
25 1 25为正整数,是5的倍数但不是3的倍数
27 2 27为正整数,是3的倍数但不是5的倍数

1.2.4 PTA提交列表及说明

提交列表说明:

部分正确:第一次提交时未注意到题目最后所提到的“如果A不是正整数,没有任何输出。”这句,导致15的倍数和非正整数都出现格式错误的提示。
解决方式:理解没有任何输出的含义,后来将语句改为return 0;则答案正确。

同学代码截图1:

自己代码截图1:

区别:1.该同学运用的语句是之前学习的if-else语句,而我运用的是switch语句,两者在本题简易程度相近。
2.在本题中我没有将第六天跟第七天放在一起,该同学则将这相同的两天放在了一起。
3.该同学在代码分布上也比较分散,看起来一目了然,分级明显,我的则是挨着连起来,看起来较密。

同学代码截图2:

自己代码截图2:

区别:1.该同学运用语句的是分支结构中的if语句,我运用的是if-else语句,略显复杂。
2.该同学没有对15的倍数进行定义,定义的变量比我的少,直接在printf语句中表达计算式,这一点与我的略显差异。
3.他的排版很整齐,没有多余的点缀。

3.1 学习进度条(5分)

周/时间 这周所花的时间 代码行 学到的知识点简介 目前比较迷惑的问题
第一周 5h 68 简单编程
第二周 15h 251 算数运算和赋值运算
第三周 25h 368 for循环语句的应用,浮点型的学习
第四周 26h 379 自定义函数和调用函数 对调用函数的应用还不够清楚
第五周 28h 356 分支结构中的if-else语句 对于使用分支结构的逻辑还不够清晰
第六周 30h 398 switch语句的学习和应用 对于题目中的逻辑先后问题还不太能理解

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

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

3.3.2 学习体会

1.新的一周里学习了分支结构中的switch语句,我对分支结构的知识面得到了扩展;对于含简单的switch语句的题目肯定是能够完成的,但是对于较难的题目我还需要去多加学习和练习。不过我还是相信自己能够彻底学会switch语句的。
2.学期已过去大半,深切地感受到我跟班上同学的差距,好多同学都能很好并快速地完成作业,且能快速理解老师所讲述的知识,就有一种很慌的感觉。
3.悲观归悲观,但还是不能落下学习,只不过是速度慢了些,相信自己还是可以完成的

posted on 2020-11-29 14:44  Nieya  阅读(207)  评论(10)    收藏  举报