第二次作业
1.本章学习总结
1.1 思维导图
1.2 本章学习体会及代码量学习体会
1.2.1 学习体会
这两周我们详细学习了循环结构,我感觉难度一下子就提升了好几个档次,尤其是<font color=#FF0000>代码量</font>很明显的增加,题目难度也进一步加深。相比于顺序和分支结构,循环结构重在理解<font color=#FF0000>循环的流程,定义循环的条件和表达式</font>。虽然我还不太能完全掌握,有时也会因为没想到最优解法而多走了很多冤枉路,但是我怕会继续联系循环结构,继续提升自己的代码量,直到熟练运用各种循环体系。也算是要为我之后的c语言的学习打下较好的基础吧!!
1.2.2 代码量
2.pta总分
2.1截图pta得分情况
2.2 我的总分
循环结构(单层):175分
循环结构(嵌套):115分
总分:290分
3.pta实验作业
3.1 pta题目1
简单计算器
模拟简单运算器的工作。假设计算器只能进行加减乘除运算,运算数和结果都是整数,四种运算符的优先级相同,按从左到右的顺序计算。
3.1.1算法分析
3.1.2代码截图
3.1.3数据测试
3.1.4pta提交列表以及说明
说明
- 一开始结束的时候未使用return 0语句导致程序死循环。
- 后面因为审题不仔细没看到非法符的输出导致一直在程序里挑毛病没有回到题目中去寻找错误。
- 在判断非法符的地方以前是在switch加default,发现pta上过不了,试了很久,就在外面多加了个if的判断语句。
3.2 pta题目2
换硬币
将一笔零钱换成5分、2分和1分的硬币,要求每种硬币至少有一枚,有几种不同的换法?设计程序输出不同的分发。
3.2.1 算法分析
3.2.2 代码截图
3.2.3 测试数据
3.2.4pta提交列表以及说明
说明
- 一开始对循环的条件判断错误,使用a=0进行递加,不能满足一种硬币至少有一个。
- 在循环内部输出了cou。
- 未给cou定义初值。
3.3 pta题目3
餐饮服务质量调查打分
在商业和科学研究中,人们经常需要对数据进行分析并将结果以直方图的形式显示出来,这会大大增加这些数据的直观性,也便于数据的分析与对比。下面以顾客对餐饮服务打分为例,输入一个正整数repeat (0<repeat<10),做repeat次下列运算:
输入一个正整数n(1≤n≤20),表示有n个学生被邀请来给自助餐厅的食品和服务质量打分,分数划分为1~5这5个等级(1表示最低分,5表示最高分),试统计调查结果,并用*打印出如下形式的统计结果直方图。
3.3.1 算法分析
3.3.2 代码截图
3.3.3 测试数据
3.3.4pta提交列表以及说明
说明
- 将输出放在了第二个循环里。
- 未对abcde的值重新赋值为0。
- 将输入的n放在循环外边。
- 对循环不太了解,未使用switch确定每个等级的人数。
4.代码互评
同学代码
我的代码
4.2 不同之处与各自优缺点
- 我的代码每个if后都有加{}花括号在任何情况就算if后只有一条语句的情况下也都加花括号,在对于我们刚接触循环结构的学生可以养成加花括号习惯。
- 同学的代码对不同的rest进行讨论,而我是定义了路程和休息时间,再进行判断来确定时间是加是减,觉得同学的代码的思维会更简单,我的就显得太复杂,不容易理解。
- 同学对代码的注释很充足,而我只在一些不容易理解的地方加了注释这一点习惯的养成我要向他学习。