| 这个作业属于哪个课程 | C语言程序设计2 |
|---|---|
| 这个作业要求在哪里 | 链接 |
| 我在这个课程的目标是 | 掌握并熟悉循环语句for的用法 |
| 这个作业在哪个具体方面帮助我实现目标 | PTA的各种错误 |
| 参考文献 | 链接链接2 |
1.1 题目名
- 7-4 求平方与倒数序列的部分和
对两个正整数m和n(m≤n)编写程序,计算序列和m
2
+1/m+(m+1)
2
+1/(m+1)+⋯+n
2
+1/n。
1.1.1数据处理

- 数据表达:运用 i ,m ,n 要求的是item,结果是sum.i ,m ,n为整数,item ,sum为双精准浮点
- 数据处理:首先输入样例输入了两个数,所以在把m,n,赋予整数时,一起输入
然后题目要求对两个正整数m和n(m≤n),所以循环的判断条件是i<=n
循环的表达式是item=pow(i,2)+1.0/i
1.1.2 造测试数据
| 输入数据 | 输出数据 | 说明 |
|---|---|---|
| 5 10 | 355.845635 | 样例 |
| 8 70 | 245.336111 | 小于样例 |
| 10 20 | 2585.768117 | 小于样例 |
1.1.4 PTA提交列表及说明

- 编译错误:在定义变量和return时未打;
- 答案错误:m和n分行打,未一起打
输出结果未于输出样例一样,“=”前后未打空格
1.2 题目
- 求交错序列前N项和
- 本题要求编写程序,计算交错序列 1-2/3+3/5-4/7+5/9-6/11+... 的前N项之和
1.2.1数据处理

- 数据表达:i, n, denominator, flag定义整数变量,double item, sum, e定义double,其中e为分子
- 数据处理:使用for语句,i=1,循环的判断条件时i<=n,这一题于前面三题的区别是分子也是递增的
所以定义e为分子,再e=e+1.0
1.2.2测试数据
| 输入数据 | 输出数据 | 说明 |
|---|---|---|
| 5 | 0.975 | 样例 |
| 10 | 0.380 | 小于样例 |
| 20 | 0.386 | 小于样例 |
1.2.3 PTA提交列表及说明

- 编译错误:老问题,某些语句忘打;
- 段错误:scanf("%d",&n);中n的前面忘打&
- 答案错误:又是输出结果与输出样例不对,printf("%.3f",sum);中%.3f前加了sum=
不知道分子e是定义整数还是double
(注:之前的答案正确是为了查看怎么定义分子,检验是不是对的)
互评


上图是其他同学的,下图是我的
上图输入,处理,输出三个部分在一起,就如同一段文字,看起来比较繁多
下图输入,处理,输出三个不分都用空格分隔开,看起来比较清晰
3.学习总结
3.1 学习进度条
| 周/日期 | 这周所花时间 | 代码行 | 学到的知识点简介 |
|---|---|---|---|
| 10.16/10.17 | 5个小时 | 141 | 如何运用for语句 |
3.2 累积代码行和博客字数

3.3 学习内容总结和感悟
3.3.1 学习内容总结
这周主要学习了如何运用for语句,它是一个循环语句,比入i ++就是在达到判定条件之前每循环一次就加一
编程是很有逻辑性的,每一行都要表达清楚,我有好几次都是顺序不对导致编译错误,而且它也与数学有很大的关系
3.3.2 学习体会
经过一个月的学习,让我深刻的是老师不会讲很多,学习C语言很多是我们自己自学。万事开头难,刚开始有太多的不知道,
在不断的询问同学和上网查找,才有现在正在打字的我,很多学长也说刚开始都是摸着石头过河,自学是很重要的,学会自学
受用一生啊!