C语言I博客作业04
C语言程序设计 | 2020级计科三班 |
---|---|
作业的要求 | 作业要求 |
作业的目标 | 对所写代码以及同学代码进行分析,总结以及本周的学习体会 |
作业帮助我实现目标的方面 | 更加清晰了对知识的了解,形成了一个树状图,总结本周的学习,并分析自己的漏洞所在 |
参考文献 | C语言程序设计 |
学号 | 20209028 |
1.PTA实验作业
从PTA题目集中选出2个最满意的题目完成
1.1求幂之和
1.1.1数据处理
**数据表达**: 整型变量i,n;浮点型变量 result;
**数据表达式**: 赋值表达式,算术表达式;
**流程结构**: 循环结构,顺序结构;
**函数参数**:主函数:main;
1.1.2实验代码截图
1.1.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
5 | result = 62 | sample等价 |
1 | result = 2 | 最小n |
7 | result = 254 | 小于最大n,大于最小n |
10 | result = 2046 | 最大n |
1.1.4 PTA提交列表及说明
格式错误:“result = %.0f\n”未打空格;
本题运用了数学函数,调用pow函数求幂。
1.2求组合数
1.2.1 数据处理
**数据表达**: 整型变量m,n;浮点型变量 result,product;
**数据表达式**:赋值表达式,算术表达式
**流程结构**: 循环结构,顺序结构;
**函数参数**: 主函数:main
被调函数:fact(int n),双精度浮点型;
形参:n 整型;实参:n,m,n-m 整型;
1.2.2 实验代码截图
1.2.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
2 7 | result = 21 | 同sample,m严格小于n/2 |
4 6 | result = 15 | m大于n/2,且n-m==1 |
1 2 | result = 2 | m==n/2 |
5 5 | result = 1 | n==m |
1.2.4 PTA提交列表及说明
**运行超时**:整型参数i写成1;
2.代码互评
找2份同学代码,和自己代码比较,建议互评代码尽量找代码风格差异较大。
同学代码截图
自己代码截图
不同处:
1.“求幂之和”题中,我调用了scanf()函数输入result,在此处可以省略,使代码更简洁;
2.“函数实现两个数的最大值”题中,同学定义的变量为a,b,我定义的变量是m,n;if-else语句中,同学if中的表达式为a>b,而我是m<n;
3.学习总结
3.1 学习进度条
周/日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
4/10.19-10.25 | 7小时 | 110行 | if-else 语句 | 无 |
5/11.1-11.7 | 7小时 | 124行 | for语句 | 对于某些题中的i取值不是很理解 |
6/11.9-11.15 | 8小时 | 169行 | 生成乘方表与阶乘表 | 对于函数的定义不是很理解,在return语句返回值有点迷糊 |
3.2 累积代码行和博客字数
3.3 学习内容总结和感悟
3.3.1 学习内容总结
请用思维导图的形式将到目前为止所学的内容进行整理。
3.3.2 学习体会
- 感受:这周我将C语言程序设计和C Primer Plus两书相结合,对基础知识的梳理更加清晰。在本周的学习中,我也遇到了困难,对于生成乘方表与阶乘表该课题的定义函数不是很理解;以及码代码时不仔细。在PTA的作业中,因为将i写成了1,导致运行超时。对于此类问题,应及时改正,细节决定成败。