C语言I博客作业06
这个作业属于哪个课程 | C语言程序设计II |
---|---|
这个作业属于哪个课程 | https://edu.cnblogs.com/campus/zswxy/CST2020-1/ |
这个作标业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2020-1/homework/11556 |
我在这个课程的目标是 | 学习并熟练switch-case,if-else |
这个作业在那个具体方面帮助我实现目标 | 学习到了同学的代码,对switch-case较熟练 |
参考文献 | c语言程序设计(第三版) |
学号 | 20208950 |
1.PTA实验作业 | |
1.1 前天是哪天
题目内容描述:本题目要求读入年、月、日,然后判断前天日期。
输入格式:
在一行中输入年、月、日。(日期为有效日期)
输出格式:
输出前天日期,格式形如2020-10-16
1.1.1数据处理
数据表达:定义整型变量y,m,d。输入三者的值,用if-else与switch-case分别判定出现的各种情况
数据处理:表达式:赋值表达式,算术表达式,关系表达式。
流程结构:定义整型变量y,m,d。输入三者的值。
if判断if(d>2),满足条件直接输出printf("%d-%d-%d",y,m,d-2)。
switch-case与输入的m作比较,分别比较出1到12月的情况
中间用if-else判断2月是否闰年if(y % 4 == 0 && y % 100 != 0 || y % 400 == 0)
输出
1.1.2实验代截图
1.1.3造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
2020 10 16 | 2020-10-14 | 16号的前一天是14号 |
2020 1 2 | 2019-12-31 | 1月2号的前一天是12月31号 |
2020 3 2 | 2020-2-29 | 3月2号的前一天是2月29号 |
1.1.4 PTA提交列表及说明 | ||
提交列表说明:
编译错误:忘写break。
答案错误:算错数。
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 数据处理
数据表达:定义整型变量A与双精度浮点型变量sum,输入A的值,if-else判断A的值与3,5的关系,最后输出
数据处理:表达式:赋值表达式,算数表达式,逻辑表达式
流程结构:定义变量int A;double sum=0;
输入A的值
if-else判断if(A%3==0&&A%5!=0) if(A%5==0&&A%3!=0) if(A%5!=0&&A%3!=0
输出
1.2.2 实验代码截图
1.2.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
18 | 3 | 不是三和五的倍数 ,除15余数 |
9 | 4 | 是三的倍数,9除15 |
20 | 2 | 是五的倍数,20除3 |
1.2.4 PTA提交列表及说明 | ||
提交列表说明: | ||
部分正确:算数运算符写成赋值运算符 | ||
编译错误:没写printf | ||
2.代码互评 | ||
同学代码截图 | ||
我的代码截图
对比:我选的是两段不同的代码
1,代码一中两代码的区别是,我用的是switch-case,同学用的是if-else,就这个题目而言,同学用的这个方法更加简便。两种方法都可掌握
2,代码二中,同学用的是一维数组,我用的是switch-case,相比之下,同学的方法值得学习
3.学习总结
3.1 学习进度条
3.2 累积代码行和博客字数
时间 | 字数 | 代码行数 |
---|---|---|
第八周 | 1010 | 15 |
第九周 | 1643 | 34 |
第十周 | 2673 | 102 |
第十一周 | 3566 | 200 |
第十二周 | 3679 | 353 |
第十三周 | 4503 | 456 |
3.3 学习内容总结和感悟
3.3.1学习内容总结
3.3.2学习体会
通过进一步学习,一些细节问题能抓住不犯错误.在课堂上,经过老师的指导,脑子里的树也开出了枝丫.
不过,在定义函数这一知识中还是有很多问题还有switch-case这方面也多加练习。