C语言I博客作业02

这个作业属于哪个课程 班级的链接
这个作业的要求在哪里 作业要求的链接
这个作业的目标 熟悉更多的函数编程,特别是for语句循环,同时对自己每一步编程都要有很好的理解
学号 20208922

1.1求简单交错序列前N项和

题目内容描述:(1)计算序列 1 - 1/4 + 1/7 - 1/10 + ... 的前N项之和。
(2)输入在一行中给出一个正整数N。
(3)在一行中按照“sum = S”的格式输出部分和的值S,精确到小数点后三位。题目保证计算结果不超过双精度范围。

1.1.1实验代码截图

1.1.2数据处理

数据表达:我运用了x、y、i、N四个整型变量,和item、sum两个双浮点型变量,把x、y用式子联系起来赋值给item。
数据处理:用到的表达式

1.1.3PTA提交列表及说明

数据表达:定义里下x、y、i、N四个整形变量,item和sum两个双浮点变量。
数据处理;循环结构。
定义变量:x、y、i、N,item和sum
用for循环语句:for (i=1;i<=N;i++)
利用表达式: item=x*1.0/y;
sum=sum+item;
x=-x;
y=y+3;
输出sum。

PTA提交列表及说明


Q1:编译后有很多编译错误
A1:发现在好多行后面漏了“;”,有一个地方还多打了一个“,”。
Q2:一直都是答案错误,找了好久没找到原因,人都要疯了。
A2:最后还是问了室友,结果发现是我自作聪明多打了输入提示: printf("Enter N:");。

1.2求分数序列前N项和

题目内容描述:(1)计算序列 2/1+3/2+5/3+8/5+... 的前N项之和。注意该序列从第2项起,每一项的分子是前一项分子与分母的和,分母是前一项的分子。
(2)输入在一行中给出一个正整数N。
(3)在一行中输出部分和的值,精确到小数点后两位。题目保证计算结果不超过双精度范围。

1.2.1实验代码截图

1.2.2数据处理

数据表达:我用了i、N两个整型变量,A、B、sum、x、y五个双浮点型变量,先用x、y赋值给A,再把y赋值给B,再重新赋值y,最后再赋值x。
数据处理:循环结构
定义上面所述变量,使用for循环语句。
利用表达式:for (i=1;i<=N;i++){
A=y*1.0/x;
sum=sum+A;
B=y;
y=y+x;
x=B;
输出sum。

1.2.3PTA提交列表及说明


Q1:这个和我上面做的很类似,但是做还是一直答案错误,脑瓜痛。
A1:看了好久,发现在算 “A=y1.0/x”时把“1.0”漏了,导致答案一直错误。
Q2:部分正确,答案对了,但是显示较大N出错,实在找不到了。
a2:没有办法,只能问了室友,开始室友没说出哪里错,最后看了室友的代码,终于发现我把应是双浮点型变量x,y定义成成了整形变量。

1.3电子汪

题目内容描述:(1)为电子宠物汪做一个模拟程序,根据电子眼识别出的两堆小球的个数,计算出和,并且用汪星人的叫声给出答案。
(2)输入在一行中给出两个 [1, 9] 区间内的正整数 A 和 B,用空格分隔。
(3)在一行中输出 A + B 个Wang!

1.3.1实验代码截图

1.3.2数据处理

数据表达:定义了A、B、i、N四个整型变量,用A和B赋值给N。
数据处理:循环结构
定义上面所述变量,用for循环语句。
先用N=A+B对N进行赋值
再直接用 for(i=1;i<=N;i++)
printf("Wang!");输出。

1.3.3PTAti提交列表及说明


Q1:刚开始完全找不到思路,不知道怎么做,把问题过于复杂化。
A1:一步步思考发现并不复杂,只需要利用好这几周学到的东西,但还是出现了很多编译错误,在 for(i=1;i<=N;i++)
printf("Wang!")中,for语句后面没有需要计算的公式,所以不需要加{},而我打成了
for(i=1;i<=N;i++){
printf("Wang!")}
Q2:出现了答案错误,不能显示多个“wang!”,只显示出来一个。
A2:发现时再 for(i=1;i<=N;i++)后面多加了一个“;”。

阅读代码

这个代码用了递归的方法,由于每次得到的数据都是来源于上一次的结果,所以我们可以假设得到了上次的结果,继而往后运算。这就运用到了递归。
利用递归和StringBuffer来解析,通过StringBuffer可以大幅度明显感知到其的效率,把数组长度加1来。
String和StringBuffer他们都可以存储和操作字符串,即包含多个字符的字符串数据。
String类是字符串常量,是不可更改的常量。而StringBuffer是字符串变量,它的对象是可以扩充和修改的。

3学习总结

周/日期 这周所花时间 代码行 学到的知识点简介 目前比较疑惑的问题
11.2-11.8 24个小时 230 for循环结构,数学常用函数与数学函数的调用头文件的运用 调用不同函数不熟悉,不太清楚编译
10.26-11.1 22个小时 210 算数运算和赋值运算 对输出的不同形式不是很明白
10.19-10.25 20个小时 180 基础常用代码知识,整型变量,运算符的相关知识,markdown语法的运用 不同代码内存占用问题

累计代码行和博客字数

3.3学习感悟

对于调试听老师讲的时候感觉很明白,但是课后没有及时去操作,弄得现在去操作的时候似懂非懂。对于输出的形式理解的也不是很透彻,需要尽快弄明白这两个问题。
有时候弄不出来真的让人头大,特别是PTA作业,因为他是必须按照那个要求,哪怕你的代码是对的,所以一定要弄清题目要求,不能急躁,要多有耐心。

posted @ 2020-11-08 10:59  不在--  阅读(139)  评论(2编辑  收藏  举报