我在这个课程的目标是 | 能够掌握并灵活运用数组和嵌套 |
这个作业在那个具体方面帮助我实现目标 | 课堂上和PTA作业 |
参考文献 | 老师的B站视频,教材和百度 |
1.PTA实验作业
1.1利用数组计算斐波那契数列
本题要求编写程序,利用数组计算菲波那契(Fibonacci)数列的前N项,每行输出5个,题目保证计算结果在长整型范围内。Fibonacci数列就是满足任一项数字是前两项的和(最开始两项均定义为1)的数列,例如::1,1,2,3,5,8,13,…。
1.1.1 数据处理
1.数据表达:定义整型N,i,b,c 数组a[46]
2.数据处理:if选择结构,和for循环结构
1.1.2 实验代码截图
1.1.3 造测试数据
输入数据 | 输出数据 |
---|---|
7 | 1 1 2 3 5 8 13 |
0 | Invalid. |
5 | 1 1 2 3 5 |
1.1.4 PTA提交列表及说明
问题1:五个换行输出未搞清楚 。
解决方法: 通过百度搜索掌握了。
问题2: 没有明白题目意思。
解决方法:通过分析题目,斐波那契数列的特点然后解决了该问题。
1.2 歌手得分
在歌手大赛中,有n个评委为参赛的歌手打分,分数为0~100分。歌手最后得分为去掉m个最高分和m个最低分后,剩余的n−2m个分数的平均值。
1.2.1 数据处理
1.数据表达:定义整型n,m,T,c 双精度 ave 数组a[100]
2.数据处理:for循环和嵌套,if选择结构
1.2.2 实验代码截图
1.2.3 造测试数据
输入数据 | 输出数据 |
---|---|
2 | |
10 1 | |
20 20 80 80 10 10 10 40 40 60 | 35.00 |
10 2 | 31.67 |
20 20 80 80 10 10 10 40 40 60 |
1.2.4 PTA提交列表及说明
问题1:for()括号内使用for循环内部的要输入的变量。
解决方法:通过再定义一个变量,然后再使用循环。
问题2:答案错误,没有准确的计算出剩余的n-2*m个值的和。
几角方法:通过不断尝试,分析,找到了计算公式。
2.代码互评
同学的代码:
我的代码:
不同点:
1.同学的在理解斐波那契数列规律的时候比我的更加简洁,他就一 个式子就解决,而我用来三个。
2.同学的更加精简,代码简短一点,而我的定义了多个变量,比较复杂。
同学的代码:
我的代码:
不同点:
1.我的代码更加简短一点,更加美观。
2.他使用了if嵌套,将问题弄得更加复杂了。
3.他的最后一个if结构可以不写,将if结果内的放入前面的for循环内。
3.学习总结
3.1 学习进度条
周/日期 | 这周花的时间 | 代码行 | 学到的知识 | 目前还疑惑的问题 |
---|---|---|---|---|
第五周 | 18h | 75 | 如何使用dev C++,进制之间转换等基础知识 | 无 |
第六周 | 16h | 82 | C语言的基本结构,数据类型和运算符 | 无 |
第七周 | 15h | 81 | 选择结构 | 无 |
第八周 | 17h | 134 | 循环结构,嵌套和优化程序代码 | 还不能写出很简洁的代码 |
第九周 | 19h | 156 | 运用数组,静态数组,动态数组 | 不能灵活运用嵌套结构 |
3.2 累积代码行和博客字数
3.3 学习内容总结和感悟
3.3.1 学习内容总结
3.3.2 学习体会
我觉得在基础知识掌握后,学习C语言更应该注重的是逻辑。在此期间,我养成了拿到编程题之后,会先画流程图(虽然还画不好,但是还在学习)。在写编程题的时候一步一步的迈向成功,那种开心的心情是会伴着骄傲的。而且在电脑上画流程图的时候,那个箭头指向真的很直观。