C语言I作业10

这个作业要求在哪里|C语言I—2019秋作业 |
---|:--😐--😐
我在这个课程的目标是| 预习第五章函数,并完成PTA上的函数题 |
这个作业在那个具体方面帮助我实现目标|仔细阅读C语言教材 认真完成PTA作业 上网学习相关视频|
参考文献|C语言程序设计 中国大学MOOC |

1.PTA实验作业

1.1 梅森数

形如2n−1的素数称为梅森数(Mersenne Number)。例如2​​​−1=3、23​​−1=7都是梅森数。1722年,双目失明的瑞士数学大师欧拉证明了231−1=2147483647是一个素数,堪称当时世界上“已知最大素数”的一个记录。本题要求编写程序,对任一正整数n(n<20),输出所有不超过2n−1的梅森数。

1.1.1数据处理

数据表达: 定义整形变量n, sushu, Balala, i,N, count=0,as=0;
数据处理:运用两个for循环,第一个for循环是用于找出梅森数,第二个是为找出在这个数下是否有其它的因子。使用两个for

1.1.2实验代码截图

1.1.3造测试数据

输入数据 结果
2 3
3 3 7

1.1.4 PTA提交列表及说明

部分正确:只能输出“None”,没有其他的数据。通过更改代码第一个for循环as=0。
部分正确:同上。
伪代码:

1.2 同构数

一个数恰好出现在它的平方数的右端,这个数就称为同构数。找出1~1000之间的全部同构数。

1.2.1 数据处理

数据表达:
数据处理: 直接输出1~1000之间的全部同构数。
伪代码:

1.2.2 实验代码截图

1.2.3 造测试数据

输出数据 说明
 1     5     6    25    76   376   625|1~1000之间的全部同构数|

1.2.4 PTA提交列表及说明

2.代码互评(5分)

(彭杰同学的代码)

(梁某人的代码)

(1)我和彭杰同学的代码的差距主要在于他调用了数学函数,使用了sqrt来减小数字。使得程序的运算更快,更便捷。这在我和助教运行我的程序时,可以很明显的发觉,我输出的梅森数达到7、8位时就开始运行迟缓,每输出一个数就会需要5、6秒。让数字被开方可以极大地节省时间,优化了程序。
(2)但是我还没懂如果一个数字被开方,会不会对原来的结果造成影响。例如我认为这样可能对原本的for语句中继续运行条件可能会出现改变,导致结果出现偏差。
(3)

3.1 学习进度条

周/日期 这周所花的时间 代码行 学到的知识点简介 目前比较迷惑的问题
第四周9.16~9.22 2小时 在屏幕上显示Hello World! 暂无
第五周9.23~9.29 2小时 100行 求华氏温度对应的摄氏温度 暂无
第六周9.30~10.6 3小时 400行 如何用 MinGW-w64 来编译C程序 暂无
第七周10.7~10.11 8小时 500行 运用if语句完成各种数学程序 对于scanf的用法不了解
第八周10.18~10.18 6小时 800行 掌握for语句,同时在了解了do while 对程序的运算次数的运营有一些困难
第九周10.19~10.26 9小时 1200行 学习函数有关的结构,开始完成通过PTA完成书本上的作业 上课前没预习,刚开始有点懵
第十周10.27~11.2 16小时 1880行 熟悉多分支结构、字符型数据类型和逻辑运算符。
第十一周11.3~11.8 35小时 2506行 熟悉多分支结构switch语句的使用。 有关字符型知识没去及时学习
第十二周11.8~11.14 52小时 3320行 熟熟悉使用while和do-while结构解决问题,学习各种循环结构的镶嵌结构处理。
第十三周11.14~11.22 62小时 3650行 熟悉多分支结构、字符型数据类型和逻辑运算符。

3.2 累积代码行和博客字数

3.3 学习内容总结和感悟

3.3.1 学习内容总结

3.3.2 学习体会

(1)这次我完成了不少的PTA题目,但我的调试任然很差劲,是因为在机房上课时不认真导致的。只想着去直接改代码,结果没有学到调试方法。
(2)这次我意识到了每次循环都要注意一些数据的重置,例如我的的第三题就没有做好,as本来是我利用来计算sushu是否是素数,但我没有及时把每次的as重置,导致程序陷入死循环。
(3)经常找不到自己的代码错误,比较影响自己的自信心,经常认。

posted @ 2019-11-28 18:14  凡~\(≧▽≦)/~尔  阅读(266)  评论(0编辑  收藏  举报