C语言I博客作业03

一.作业头

这个作业属于哪个课程 2020计科3班
这个作业要求在哪里 作业03
这个作业的目标 复习上课内容,在题目中发现自己的错误,观察大佬代码,从中预习并发现他们的代码的优美
学号 20209032

二.本周作业

1.PTA实验作业(15分/题)

1.1 输出华氏-摄氏温度转换表

  • 题目描述:输入2个正整数lower和upper(lower≤upper≤100),请输出一张取值范围为[lower,upper]、且每次增加2华氏度的华氏-摄氏温度转换表。温度转换的计算公式:C=5×(F−32)/9,
    其中:C表示摄氏温度,F表示华氏温度。
1.1.1实验代码截图

1.1.2数据处理
数据表达 内容
使用了哪些变量 upper,lower,F,C
这些变量的值是怎么来的 upper与lower通过scanf定义变量的值,F由lower赋值,C由计算式计算得出
类型是什么 upper、lower与F是整型 ,C是双精度浮点型
数据处理 内容
数据用到的表达式 分段函数
流程结构 if-else的分支结构与for的循环结构
1.1.3 PTA提交列表及说明


  • Q1:第一张图片是在visual studio中检查代码没有出现错误后提交,自己已经尝试过按照代码走不同的路径,发现不正确,感到很奇怪。
    A1:查阅后发现自己没有看清提议,题目明确要求在输出中值要占据6字符宽度。
  • Q2:第二张图片是由于第一张错误后查阅的他人代码,从中看到一些知识点。
    A2:在for语句中初始值不一定要对其赋值,在末尾++为自增1,如果要对其改变应为i=i+n(n为每一次改变的量),那样就不需要再在for语句中再次计算加法。
  • Q3:在他人代码中发现即使他的答案正确,但是对我自主测试的数仍不符合如:upper=120,lower=100,他的代码任旧会输出最后的表格。
    A3:为此我觉得应该严谨一些,所以用到了多重判断,从这里学到了“或,且,非”的表达方式。

1.2生成3的乘方表

  • 题目描述:输入一个非负整数n,生成一张3的乘方表,输出30~3​n的值。可调用幂函数计算3的乘方。
1.2.1 实验代码截图

1.2.2 数据处理
数据表达 内容
使用了哪些变量 i,n,m
这些变量的值是怎么来的 n是由scanf定义的变量,i是定义的for的初始值,m由调用的数学函数计算得出
类型是什么 i,n,m都是整型
数据处理 内容
数据用到的表达式 数学函数中的指数函数
流程结构 for的循环结构
1.2.3 PTA提交列表及说明

  • Q1:在第一次调试时发现所有的数都在一行,无法形成表格。
    A1:马上就明白是为换行导致没循环一次所有计算结果都在同一行,加入\n后就达到预期结果。
  • Q2:在前面他人的代码比较好看,自己的却像堆积起来的一团东西。
    A2:发现他们会在运算符与各变量会加入空格对其美化等等。

1.3 求阶乘序列前N项和

  • 题目描述:本题要求编写程序,计算序列 1!+2!+3!+⋯ 的前N项之和。
1.3.1 实验代码截图

1.3.2 数据处理
数据表达 内容
使用了哪些变量 i,n,m,sum,product
这些变量的值是怎么来的 n是由scanf定义的变量值;sum与product一开始是固定的输出值,在后面跟随计算式改变;m与i在for语句中被定义为初始量,并逐渐改变
类型是什么 i,n,m,sum,product都是整型
数据处理 内容
数据用到的表达式 累乘与累加
流程结构 for的循环结构
1.3.3 PTA提交列表及说明

  • Q1:程序的流程具体是怎么样的呢,一开始想了可久了!!!
    A1:画了几幅流程图,最后发现用两次循环语句,每次进行第二个for语句的判断时,应该是看m与i的关系,再一次进行循环。
  • Q2:在遇到这么多问题,是怎么解决的呢!!!
    A2:我大概就会去CSDN上找大佬们的代码,去看看他们跟我自己写的代码差距在哪里,他们的代码完美不,我每一次可以在他们的代码中学到很多东西。

2.阅读代码(-5——5分)

  • 虽然我没看懂他的程序,但是他的解释让我特别明白差距,他们不会一味的直接开始写代码,而是想好这次我要怎样去设计他,需要用到怎样的流程。在写代码时,不是说直接上手去写代码,而是说在自己脑袋中构建自己所需要的东西,或者把写下来。
  • 在设计自己的程序时应该要考虑其时间复杂度与空间复杂度,在上课时,彭老师就说过在编程中,不是时间换空间就是空间换时间。我们应该要考虑当前情况下,这个程序的最优解。
  • 在大佬的代码中我虽然看不懂,但是我却看到了明了美观。在每一部分中都会有空段进行排版。

3.学习总结(15分)

3.1 学习进度条(5分)

周/日期 这周所花的时间 代码行 学到的知识点简介 目前比较迷惑的问题
6/10.8~10.11 2h 51 打印“ hello world”
7/10.12~10.18 8h 70 各个符号代表的是什么的基础知识 还有许多符号分辨不清
8/10.19~10.25 10h 93 数学函数的调用 对于大佬前面的哪些头文件的调用类型看不懂
9/10.26~11.1 10h 154 if-else语句
10/11.2~11.6 10h 348 for语句 较为复杂的循环还搞不清循环几次,循环内容

3.2 累积代码行和博客字数(5分)

3.3 学习感悟(5分)

  • 每一周都是先上上机课,我一般都是在上机课上试错,预习工作都放在了上机课,那样对自己的学习进度由一定的影响,对上课所要求的内容会难以及时完成,自己一定要赶快改正。
  • 在以后的学习中要学会使用CSDN,在CSDN上学习大佬的方法,多在CSDN上搞好预习,遇到不懂的先问CSDN。
posted @ 2020-11-07 00:15  光air  阅读(416)  评论(6编辑  收藏  举报