C语言I作业03
这个作业属于哪个课程 | https://edu.cnblogs.com/campus/zswxy/CST2020-4 |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2020-4/homework/11455 |
这个作业的目标 | <展现自己目前编译最好的三个代码,阅读一份别人的优秀代码,总结这周的学习经验与进度。> |
学号 | <20209044> |
1.PTA实验作业(15分/题)
1从PTA题目集中选出3个你最满意的题目完成以下内容,选择题目难度越大,分值越高,每题2分。
1.1求简单交错序列前N项和
本题要求编写程序,计算序列 1 - 1/4 + 1/7 - 1/10 + ... 的前N项之和。
1.2实验代码截图
1.3实验处理
数据表达:N为运算次数,item为for循环语句的中间值,sum为运算结果。
数据处理:运用了pow幂函数,for循环语句。
1.4 PTA提交列表及说明
我先用的vs2019编译(便于调试)这个图是我最先做出来的,然后总是sum=inf。经过调试发现分母=0,然后慢慢改进自己摸索成功了。
2 求分数序列前N项和
本题要求编写程序,计算序列 2/1+3/2+5/3+8/5+... 的前N项之和。注意该序列从第2项起,每一项的分子是前一项分子与分母的和,分母是前一项的分子。
1.2实验代码截图
1.3实验处理
数据表达:运用for循环函数,scanf,printf输入输出函数。
数据处理:N为循环次数,m为for循环的中间值,a为分母,b为分母,c为运算中间值,sum为结果。
1.4 PTA提交列表及说明
在编辑时将结果语句放在循环语句最后一条,导致第一次循环没有给sum赋值。
3判断素数
本题的目标很简单,就是判断一个给定的正整数是否素数。(信你个鬼)
1.2实验代码截图
1.3实验处理
数据表达:运用动态数组和for的循环语句,运用if-else分支结构,运用pow函数,用break打破循环。
数据处理:t[a[为动态数组,N为用户输入的不确定数目的N组数据,数据用b来取余,a为for循环的中间值。
1.4 PTA提交列表及说明
开始题目很短,看进去才发现,这是个坑!
要用动态数组来描绘用户输入的N数据,找了好多资料,才勉强完成。前面几次都是b值不够大,要将b调到2^31次方。最后还是答案正确了,但是运行用时太长就部分正确。
2.阅读代码(-5——5分)
题目意思是给定一个正整数 n ,输出外观数列的第 n 项。一个中间数组用来保存数据,一个key用来记录当前的字符,count记录个数。count和key有两个条件,一个是字符改变的时候,一个是走到末尾了。有点难懂。
3.学习总结(15分)
3.1 学习进度条(5分)
周/日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
第3周 | 15 | 200 | else分支结构,for循环结构。 | 动态数组 |