这个作业属于那个课程 | C语言程序设计II |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2019-4/homework/9932 |
我在这个课程的目标是 | 熟悉掌握switch语句的运用 |
这个作业在那个具体方面帮助我实现目标 | 学习switch语句的格式以及几种不同形式的运用 |
参考文献 | 《C语言程序设计》,百度 |
一.PTA实验作业
1.1 计算天数
题目内容描述:
要求编写程序计算某年某月某日是该年中的第几天。
输入格式:
输入在一行中按照格式“yyyy/mm/dd”(即“年/月/日”)给出日期。注意:闰年的判别条件是该年年份能被4整除但不能被100整除、或者能被400整除。闰年的2月有29天。
输出格式:
在一行输出日期是该年中的第几天。
1.1.1数据处理
数据表达:使用变量全为整型,y,m,d分别表示年月日。
数据处理:先定义年月日的输入格式,再使用循环语句和switch语句求出天数,最后输出天数。
1.1.2实验代码截图
1.1.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
2000/03/02 | 60 | pta样例 |
2001/07/06 | 187 | ![]() |
2002/12/05 | 339 | ![]() |
2003/06/03 | 154 | ![]() |
2004/08/28 | 241 | ![]() |
1.1.4 PTA提交列表及说明
答案错误:提交两次出现答案错误,此次主要出现了两个错误,一是for循环中我开始定义的i的值为0,而不是1。二是,if-else语句中循环体没有加上括号。经在devc++编译运行检测发现了错误并解决。
**1.2 **统计学生成绩
本题内容描述: 本题要求编写程序读入N个学生的百分制成绩,统计五分制成绩的分布。百分制成绩到五分制成绩的转换规则:
- 大于等于90分为A;
- 小于90且大于等于80为B;
- 小于80且大于等于70为C;
- 小于70且大于等于60为D;
- 小于60为E。
1.2.1 数据处理
数据表达:变量全为整型,ABCDE作为常规变量表示各等级数,i,N,s用于循环语句以及switch语句。
数据处理:初始定义各等级成绩数为0,再通过循环语句和switch语句求出各等级成绩的个数,最后进行输出。
1.2.2 实验代码截图
1.2.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
7;77 54 92 73 60 65 69 | 1 0 2 3 1 | pta样例 |
5;52 76 80 92 97 | 2 1 1 0 1 | ![]() |
4;78 99 88 59 60 | 1 1 1 0 1 | ![]() |
6;20 45 58 77 82 94 | 1 1 1 0 3 | ![]() |
1.2.4 PTA提交列表及说明
编译错误:这个代码稍有复杂,其次我对switch语句的格式不太熟悉,出现了编译错误,仔细检查后解决了这个问题
多种错误:格式错误答案错误,多次尝试才发现ABCDE的定义为0的位置出现了错误,我将它放入了循环语句里,导致出现答案错误,然后就是输出格式弄错,定义其位置时我加了'&'符号。
二.代码互评
代码比较1:
我的代码 | 同学的代码 |
---|---|
![]() |
![]() |
代码分析:
- 对比起来我和同学的代码差异就比较大了,很明显他的比我多出不少,不过他的比我的更加好理解,我则是使用另外定义变量通过‘+=’直接计算出了天数之和。
代码比较2:
我的代码 | 同学的代码 |
---|---|
![]() |
![]() |
代码分析:
- 总体上两个代码是差不多的,风格类似,形式也差不多,不过我运用了default语句省下了不少代码的书写。
三.学习总结
3.1 学习进度条
日期 | 这周所花时间 | 代码行 | 学到的知识简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
第一周(9.19-9.27) | 1小时左右 | 28 | c语言初步了解 | 格式的正确运用 |
第二周(9.27-10.4) | 2小时左右 | 20 | markdown格式的运用 | 怎么样让排版更加美观整齐 |
第三周(10.4-10.11) | 5小时左右 | 104 | if-else语句的运用 | 题目逻辑掌握不到位,分析问题的能力有待提高 |
第四周(10.11-10.18) | 5.5小时左右 | 92 | 循环语句的运用 | 循环体的编写以及结构的多种变化理解不透彻 |
第五周(10.18-10.25) | 8小时左右 | 90 | 调用函数的运用 | 还是很多时候循环体计算式不能写对 |
第六周(10.30-11.02) | 7小时左右 | 133 | 分支函数的运用 | 分支函数的多种形式理解不到位 |
第七周(11.4-11.8) | 5小时左右 | 105 | switch语句的运用 | switch语句的理解以及用法不到位 |
3.2 累积代码行和博客字数
3.3 学习内容总结和感悟
3.3.1 学习内容总结
3.3.2 学习体会
- 学习c语言所遇到的困难越来越大,其中的语句也越来越难理解。
- 作业完成的速度迟迟没有得到提升。
- 对c语言书中内容掌握不够。
- 不过学习的兴趣不减,希望自己继续加油。