| 这个作业属于那个课程 | C语言程序设计II |
|---|---|
| 这个作业要求在哪里 | C语言I作业004 |
| 我在这个课程的目标是 | 用C语言编写程序-循环结构,掌握使用for循环语句实现指定次数的循环程序设计 |
| 这个作业在那个具体方面帮助我实现目标 | 题中编写序列之和让我会用for语句实现循环结构 |
| 参考文献 | 集美大学林丽老师 |
1.PTA实验作业

1.1 计算序列 1 + 1/3 + 1/5 + ... 的前N项之和
1.1.1数据处理
- 数据表达:denominator,i,N为整形变量,sum为浮点型
- 数据处理:
- 表达式:item=1.0/denominator
sum=sum+item
denominator=denoominator+2 - 循环结构:i=1;i<=N;i++
1.1.2实验代码截图

1.1.3 造测试数据
| 输入数据 | 输出数据 | 说明 |
|---|---|---|
| 3 | sum=1.533333 | 1+1/3+1/5的和 |
| 5 | sum=1.787302 | 1+1/3+1/5+1/7+1/9的和 |
| 6 | sum=1.878211 | 1+1/3+1/5+1/7+1/9+1/11的和 |
1.1.4 PTA提交列表及说明

- 提交列表说明:
- 答案错误:没有精确到小数点后六位
- 编译错误:第16行中item后没有打;
- 全部正确:将第19行引号中的.2f去掉,在第16行的item后打上;
1.2 计算交错序列 1-2/3+3/5-4/7+5/9-6/11+... 的前N项之和
1.2.1 数据处理
数据表达:denominator,flag,i,N为整型,N是输入值,i用于循环,flag用于变符号
数据处理:
- 表达式:item=flag*(double)i/denominator
sum=sum+item
flag=-flag
denominator=denominator+2 - 循环结果:i=1;i<=N;i++
1.2.2实验代码截图

1.2.3 造测试数据
| 输入数据 | 输出数据 | 说明 |
|---|---|---|
| 2 | 0.333 | 1-2/3的值 |
| 4 | 0.362 | 1-2/3+3/5-4/7的值 |
| 6 | 0.372 | 1-2/3+3/5-4/7+5/9-6/11的值 |
1.2.4 PTA提交列表及说明

- 提交列表说明:
- 答案错误:结果没有保留3位小数
- 答案正确:将第22行中写成"%.3f "
2.代码互评
同学代码截图

自己代码截图

- 我的比这位同学简单,我是一个表达式就计算完了,他分了两个
- 我们两个的思维不一样,我是一直循环计算加到n,他是把n提出了
同学代码截图

自己代码截图

- 我们的定义不同,这位同学是直接定义成浮点型,我是将整型强制转换成浮点型
- 他在定义是就给了初始值,我是之后再给初始值
3.学习总结
3.1 学习进度条
| 周/日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
|---|---|---|---|---|
| 第六周 | 21小时 | 400行 | 如何用 MinGW-w64 来编译C程序 | 无 |
| 第七周 | 24小时 | 478行 | 运用if语句完成各种数学程序 | 对于&&的用法不了解,现在操作不熟练 |
| 第八周 | 20小时 | 349行 | 掌握使用for循环语句实现指定次数的循环程序设计 | 无 |
3.2 累积代码行和博客字数

3.3 学习内容总结和感悟
3.3.1 学习内容总结
- 我学会了for语句, for(表达式1;表达式2;表达式3)
- 循环结构由表达式1决定条件,表达式2决定结束
- 会用C语言编写循环结构了
3.3.2 学习体会
- 学习的越多越可以发现自己的不足,遇到的问题越多,就会想要去解决这些问题并从中学到知识,C语言只是编写语言的一部分,以后要学的东西还有很多,越来越发现时间不够用了,这周我大部分空余时间都花在了学习c语言,写C语言作业上面,但是我的学习进度还是不快,我现在想要提高我的学习效率,加快学习知识的速度,我目前基础很不牢固,甚至还欠缺很多的知识,以后还要更加努力