C语言I博客作业04

醉酒当歌 提交于 2019-12-01 17:16:51

一、本周教学内容&目标

第2章 用C语言编写程序-循环结构 2.4 输出华氏-摄氏温度转换表。要求学生掌握使用for循环语句实现指定次数的循环程序设计。

二、本周作业头

问题 答案
这个作业属于那个课程 C语言程序设计II
这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2019-1/homework/9768
我在这个课程的目标是 以C为基础,进一步学习java与C++
这个作业在那个具体方面帮助我实现目标 练习markdown语法以及自主寻找资料的能力
参考文献 集美大学林丽老师作业参考 百度

三、本周作业

1. PTA作业

1.1 本题要求编写程序,计算交错序列 1-2/3+3/5-4/7+5/9-6/11+... 的前N项之和。.

1.1.1 数据处理
-数据表达:提出整形变量n,m分别存储分子分母的值,i进行循环使分数相加,flag进行正负变号,N为输入的多少项;双精度浮点型sum用于存储结果,并输出;
-数据处理:应用for循环控制进行运算的次数,进行运算的结果存储再sum中,for循环中sum存储之后分子进行加1,分母进行加2,然后再改变下一项的正负,以此进行循环来计算存储结果,最后得出正确答案;
1.1.2 实验代码截图

输入格式:

输入在一行中给出一个正整数N。

输出格式:

在一行中输出部分和的值,结果保留三位小数。

输入样例:

5

输入样例:

0.917

1.1.3 造测试数据

输入数据 输出数据 说明
9 0.907 无临界值
0 0.000 非正整数

1.1.4 PTA提交列表及说明

Q1:答案正确,是否出现过问题?
A1:没有,因为通过前几题慢慢过渡,这题未出现错误,直接正确;

1.2 本题要求对两个正整数m和n(m≤n)编写程序,计算序列和mm+1/m+(m+1)(m+1)+1/(m+1)+...+n*n+1/n
.
1.2.1 数据处理
-数据表达:提出整形变量m,n用与输入所需的条件,参与循环与计算,i用于进行for循环,使计算的次数有限制;使用的双精度浮点型变量sum用于存储计算结果,并输出;
-数据处理:仍使用for循环控制重复次数,以sum来存储结果,并为下一次运算做准备,其中的pow来计算m+i的平方,然后与上一次的sum何1.0/m+i相加后赋值给sum,时sum多次变化,直到for循环终止,得出正确的答案sum;
1.2.2 实验代码截图

输入格式:

输入在一行中给出两个正整数m和n(m≤n),其间以空格分开。

输出格式:

在一行中按照“sum = S”的格式输出部分和的值S,精确到小数点后六位。题目保证计算结果不超过双精度范围。

输入样例:

5 10

输入样例:

sum = 355.845635


1.2.3 造测试数据

输入数据 输出数据 说明
3 7 136.092857 正常输入
5 5 25.200000 相等临界

1.2.4 PTA提交列表及说明

Q1:答案正确,在这之前是否出现过错误?
A1:出现过答案错误,当遇到答案错误,我对输出进行了检查,最后未发现哪里出现错误,最后寻求了室友的正确代码,进行对比,发现代码处理部分几乎一样,最后在输入中发现了错误,m,n的位置与题给位置不符,导致无法输出正确答案,改正了m,n的位置之后代码正确;

2. 代码互评

找2份同学代码,和自己代码比较,建议互评代码尽量找代码风格差异较大.
同学代码截图:

自己代码截图:

与第一份代码的比较:第一份同学的代码时直接时i=m,让i递加到n来解答问题,他的 i = 我的 m + i ;其他区别不大,都是应用for循环来完成,但是关于他的“  i+= ”我不明白,等会回去百度;
与第二份作业的比较:第二位同学将问题分成了两部分,提出较多的变量,分别对问题进行计算然后再将他们相加,这是一种方法,因为以后遇到的题目可能本身计算就是很复杂的,但是可以通过这种方式,减轻一起写的错误率;

3. 学习总结

3.1 学习进度条.

周/日期 这周所花时间 代码行 学到的知识点简介 目前比较迷惑的问题
第五周 6小时 326 遗忘 遗忘
第六周 11小时 483 遗忘 遗忘
第七周 9小时 513 定义函数 return的返回位置
第八周 12小时 467 局部变量与全局变量 暂无

3.2 累积代码行和博客字数.

3.3 学习内容总结和感悟.
3.3.1 学习内容总结
总结:if-else,for循环的使用,使用时要注意表达式及后面的一个语句,如果需要多个语句在for中循环,应加上大括号变为复合语句;要注意防止if-else与for后面不可加上“ ; ”,单独的“ ; ”的会变为空语句且不会报错,也无法时后续语句进行相应的逻辑运行或循环;if-else也可以在if或else后再嵌入另一个if-else语句,进行多分支的运行,满足多种条件的需要;

3.3.2 学习体会
体会:本周进行了函数的学习,了解了如何定义与应用,又在一些外部环境中获取一些知识,例如:b站,博客园中老学长的博客(dxkite);在现在的学习中对于新知识还是很向往的,现在好想学习新的语言;但是由于自己在作业1中有定下目标,暂时仍需进行c的学习,但是最近的时间显得有些仓促,关于学习函数都已经好长时间,才弄完函数,不是因为困难,而是因为很缺时间下来学习,感觉c的进度极其缓慢,也有其他学科要进行学习的压力,接下来要进行规划时间以加快c的学习,对于新的方式进行编程,想的自己非常激动,现在对于学科的学习仍感到快乐,至少不讨厌(有点烦线代,但是又不能不学);

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!