| 问题 | 答案 |
|---|---|
| 这个作业属于那个课程 | C语言程序设计II |
| 这个作业要求在哪里 | 作业链接 |
| 我在这个课程的目标是 | 巩固之前所学知识并将知识进一步系统化并掌握switch语句 |
| 这个作业在那个具体方面帮助我实现目标 | PTA作业和作业要求对问题的解决的详细记录 |
| 参考文献 | 百度文库,教材,知否等 |
1.PTA实验作业

1.1统计学生成绩
题目内容描述:
本题要求编写程序读入N个学生的百分制成绩,统计五分制成绩的分布。百分制成绩到五分制成绩的转换规则: 大于等于90分为A; 小于90且大于等于80为B; 小于80且大于等于70为C; 小于70且大于等于60为D; 小于60为E。 输入格式: 输入在第一行中给出一个正整数N(≤1000),即学生人数;第二行中给出N个学生的百分制成绩,其间以空格分隔。 输出格式: 在一行中输出A、B、C、D、E对应的五分制成绩的人数分布,数字间以空格分隔,行末不得有多余空格。
1.1.1数据处理
数据表达:变量有n、i、g、A、B、C、D、E。n和g由scanf赋值,i初始定义为1,ABCD定义初始值都为一。 数据处理:我用到了for(;i<=n;i++),switch(g/10)两个表达式。语句有switch语句for语句。 伪代码:
1.1.2实验代码截图

1.1.3 造测试数据
| 输入数据 | 输出数据 | 说明 |
|---|---|---|
| 7 77 54 92 73 60 65 69 | 1 0 2 3 1 | 题中数据 |
| 4 95 74 49 84 | 1 1 0 1 | 随机数据 |
| 5 87 93 83 63 74 | 1 2 1 1 0 | 随机数据 |
1.1.4 PTA提交列表及说明

提交列表说明: 1.编译错误:for语句括号内第一忘记用分号隔开。 2.答案错误:忘记输出ABCD。 3.答案正确:改正即可。
1.2 计算天数
题目内容描述:
本题要求编写程序计算某年某月某日是该年中的第几天。 输入格式: 输入在一行中按照格式“yyyy/mm/dd”(即“年/月/日”)给出日期。注意:闰年的判别条件是该年年份能被4整除但不能被100整除、或者能被400整除。闰年的2月有29天。 输出格式: 在一行输出日期是该年中的第几天。
1.2.1 数据处理
数据表达:变量有i,y,m,d,sum。y,m,d都由scanf赋值。i由for语句累加而得。它们都为整形。 数据处理:我将大月和小月分为两类,用switch语句累加。再将闰年的二月归为一类,用到了if-else语句。 伪代码:
1.2.2 实验代码截图


1.2.3 造测试数据
| 输入数据 | 输出数据 | 说明 |
|---|---|---|
| 2009/03/02 | 61 | 题中数据 |
| 2019/10/01 | 274 | 随机数据 |
| 2001/08/21 | 233 | 随机数据 |
1.2.4 PTA提交列表及说明

提交列表说明: 1.编译错误:case后面语句和在一起,偷懒导致错误。 2.编译错误:输出sum时忘记打分号,粗心导致错误。 3.答案正确:改正即可。
2.代码互评
找2份同学代码,和自己代码比较,建议互评代码尽量找代码风格差异较大。
同学代码截图
同学一

同学二
自己代码截图

1.我用的是switch语句和for语句,他多了一个if-else语句,我认为我的代码更加简便。
2.他多定义了一个变量sum。
3.分类方式也不同,他采用数学表达式,我直接拿分数除以十,较之更简洁。
3.学习总结
3.1 学习进度条
| 周/日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
|---|---|---|---|---|
| 第一周 | 2小时 | 30 | 最简单代码 | 无 |
| 第二周 | 2小时 | 30 | 温度转换 | 无 |
| 第三周 | 5小时 | 90 | if-else语句 | 格式和符号的使用 |
| 第四周 | 7小时 | 100 | for循环语句 | 无 |
| 第五周 | 8小时 | 102 | 自主编写函数 | 编写函数的一些格式框架仍然有点模糊 |
| 第六周 | 8小时 | 130 | 分支结构 | 无 |
| 第七周 | 7小时 | 98 | switch语句 | 拿到题目时仍然不会间接表达变量 |
3.2 累积代码行和博客字数

3.3.1 学习内容总结

3.3.2 学习体会
写作业的时间减少了,但是题量也减少了,但同时题目的难度也有所增大。这就很考验我们的做题速度和精确度。虽然学了这么久,但是有些时候还是会犯一些低级错误。比如for语句括号里忘记用分号隔开,最基本的printf输出时忘记用引号等等。这些都是我经常犯的错误,还是需要多刷pta来纠正自己。最重要的一点,教材真的要多看,可能会有意想不到的的收获。其次同学的代码也可以多看看,也可以学到一些新的东西。比如这次pta作业的第一题,看了同学的代码后,case后面那条语句如果都一样的话可以在后行一次性写出来,不用写那么多次。
来源:https://www.cnblogs.com/lm20010821/p/11816115.html