这个作业属于哪个课程 | https://edu.cnblogs.com/campus/zswxy/SE2020-1 |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/SE2020-1/homework/11448 |
这个作业的目标 | 更加熟练的编写代码,发现自己的不足,掌握if-else语句,for语句等循环语句 |
学号 | 20209113 |
1.PTA实验作业
1.1 求分数序列前N项和
本题要求编写程序,计算序列 2/1+3/2+5/3+8/5+... 的前N项之和。注意该序列从第2项起,每一项的分子是前一项分子与分母的和,分母是前一项的分子。
1.1.1 实验代码截图
1.1.2 数据处理
·数据表达:用了两个整型变量i,N;双精度浮点型变量X,Y,sum,term。N是正整数,X表示每一项的分子,Y表示每一项的分母,sum是前N项和。
·数据处理:运用for循环语句,表达式:sum+=X/Y;term=X;X=X+Y;Y=term
1.1.3 PTA提交列表及说明
·Q1:没有理清程序条理,没有使用scanf()函数,将浮点型变量用int编辑。
·A1:多读题目,重新思考,看书查找资料区分好整型变量和浮点型变量。
·Q2:为何总是编译错误?
A2:反复检查后发现没有规定小数点后几位数。
1.2 for循环练习:1到X的累加和,并按指定格式输出。
本题要求读入1个整数X,然后输出1+2+3+...X 的和。
1.2.1 实验代码截图
1.2.2 数据处理
·数据表达:用了整型变量i,x,sum。x为正整数,i表示每一项,sum表示1到X的累加和。
·数据处理:运用了for循环,表达式:i=1;i<=x;i++;sum=sum+i
1.2.3 PTA提交列表及说明
·Q1:printf中格式控制字符弄错,参数漏了sum。
·A1:在参数中加入sum,格式控制字符int型使用%d。
·Q2:反复检查了才提交,感觉是对的但还是答案错误?
·A2:在仔细检查过后寻求了同学的帮助,在scanf后打一个空格然后输出就对了。
1.3 电子汪
据说汪星人的智商能达到人类 4 岁儿童的水平,更有些聪明汪会做加法计算。比如你在地上放两堆小球,分别有 1 只球和 2 只球,聪明汪就会用“汪!汪!汪!”表示 1 加 2 的结果是 3。
本题要求你为电子宠物汪做一个模拟程序,根据电子眼识别出的两堆小球的个数,计算出和,并且用汪星人的叫声给出答案。
1.3.1 实验代码截图
1.3.2 数据处理
·数据表达:用了整型变量i,a,b,n。a,b分别表示两堆小球的个数,n表示两堆小球的总个数。
·数据处理:运用了for语句,表达式:n=a+b,i=1;i<=n;i++
1.3.3 PTA提交列表及说明
通过之前的练习和在编码器上仔细编码,所以这题没有出现错误。
2.阅读代码
找一份优秀代码,理解代码功能,并讲出你所选代码优点及可以学习的地方。
参考网站:ACM解题,leecode面试数题网站,找简单题目阅读分析。
优秀代码:
题目内容:把M个同样的苹果放在N个同样的盘子里,允许有的盘子空着不放,问共有多少种不同的分法?(用K表示)5,1,1和1,5,1 是同一种分法。
·(1)这题用了if-else语句,while循环体语句,整型的数据结构,scanf和printf的语句函数。
·(2)使用递归的方式 int fun(int n,int m)。fun(m,n-1) 表示m个苹果放到n-1个盘子中,有一个盘子为空,剩余情况为每个盘子至少有一个苹果,那么分配方法数与每个盘子都减少一
苹果方法数相同,即fun(m-n,n)。
优点及可以学习的地方:
1.代码清晰明了,有后面的注释。在以后打代码的过程中可以在其内容后面进行注释,方便他人和自己能更明白写的程序。
2.使用了递归的方式和让m=0时候结束,让我们了解了递归方式。
3.接触到了还未学习的循环语句while,知道||表示或者,满足一个条件就循环。
3.学习总结
3.1 学习进度条
周/日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
第八周/10.19~10.25 | 15小时 | 150行 | 在屏幕上显示Hello World!学会了怎样用PTA进行写代码作业,学会了markdowm语法 | 无 |
第九周/10.26~11.1 | 12 小时 | 350行 | 求华氏温度对应的摄氏温度 常量,变量和数据类型 知道以后要怎样向别人提问 | 变量问题,输入输出格式 |
第十周/11.2~11.8 | 20小时 | 460行 | for循环,if else语句 | 对于&的用法不了解,输出时保留几位小数 |
3.2 累积代码行和博客字数
3.3 学习感悟
经过这一周的学习,我写代码速度相比有所提高,写的代码越来越难,了解了与C语言相关的基础的编程语言,主要学会了如何使用if-else语句,for语句,同时对double,int也更熟练,但是总
不注意细节问题。每次遇到问题要思考很久,打代码也用了比以前更多的时间有时打到崩溃,但看到程序运行正常的时候很有成就感,这就是其中的乐趣吧,渐渐地喜欢上了编程。很多问题
只有在“敲代码”的时候才能发现,才会有更加深刻的体会、领悟和理解,通过翻书本和向他人提问能够收获很多东西,在下次遇到时能很快做出来,争取不再出现相同的错误。应加强数学
逻辑,不断努力!