zoukankan      html  css  js  c++  java
  • C博客作业01分支、顺序结构

    1.本章学习总结

    1.1 思维导图

    1.2 本章学习体会及代码量学习体会

    1.2.1 学习体会

    在暑假已经有初步接触c语言,所以在学习c语言的开始会比较轻松,但仍然解题时候步骤太过于繁琐,简单的题目复杂化,对编程的优化的处理能力还需提升。希望能在老师的课上了解更多有趣的关于编程的网站和知识,比如掌握驼峰命名法和老师安利的www.easyx.cn

    1.2.2 代码累计

    2.PTA总分

    2.1截图PTA中顺序结构、分支结构的排名得分


    2.2 我的总分:

    顺序结构:100
    分支结构:125
    总分:225

    3.PTA实验作业

    3.1 PTA题目1

    根据活动经费和U盘单价预估可购买U盘的最大数量。

    3.1.1 算法分析

    1.定义活动经费money,u盘单价price,购买数目number。
    2.输入活动经费和u盘单价。
    3.用由活动经费除去u盘单价可得可购买数量,但由于浮点数的误差,则在数量加上0.00001,即money/prince=number+0.00001。
    4.输出所求得的u盘购买数量,即number。

    3.1.2 代码截图

    3.1.3 测试数据

    3.1.4 PTA提交列表及说明


    注明:此题目一直在dvec++上面测试不出来,当时一直没有提交,后来老师点破才明白。

    • Q1:输出值与题目所给的输出样例不符合,按照第一个样例输入,输出结果永远少1。
    • A1:定义变量方面和输入的语法没有错漏和失误,推测是输出出现问题,可是无论怎么改都是错误的。
    • Q2:没有对浮点数误差知识点的了解,导致问题无法解决。直接用money/price=number,故答案一直不正确。
    • A2:最后在老师课上了解了浮点数的误差,才知道浮点数误差的知识点,才明白money/price=number+0.000001才对。
    • 总结:浮点数判断相等有误差,需要设定一个阈值解决误差问题。

    3.2PTA题目2

    根据输入的三角形的三条边a、b、c,计算并输出面积和周长。

    3.2.1 算法分析

    1.程序开始放入math.h的头文件,后续计算有需要。
    2.定义三角形的三条边,分别设为a,b,c,s。
    3.输入a,b,c。
    4.求出s。
    5.使用if else分支结构,判断如果a+b>c,a+c>b,b+c>a是否成立。
    6.如果成立,则通过sqrt(s(s-a)(s-b)*(s-c))求出面积,用a+b+c求出周长。
    7.如果不成立,则输出These sides do not correspond to a valid triangle。

    3.2.2代码截图

    3.2.3 测试数据

    3.2.4 PTA提交列表及说明

    • Q1:明明按照三角形的两条边之和大于第三边进行编程,为什么还是一直错误?
    • A1:原来是任意的两条边之和大于第三边,情况考虑不周全,所以总是部分正确,有情况是错误的。
    • Q2:为什么考虑了任意的条件,反而变成了编译错误?
    • A2:当时对逻辑符号没有了解,将逻辑运算的和用‘,’来处理,原来是要用‘&&’,知道之后追悔莫及。

    3.3PTA题目3

    输入在一行中按照格式“yyyy/mm/dd”(即“年/月/日”)给出日期。注意:闰年的判别条件是该年年份能被4整除但不能被100整除、或者能被400整除。闰年的2月有29天。

    3.2.1算法分析

    1.定义年(year)、月(mouth)、日(day)。
    2.用if-else分支结构判断输入年份是否是闰年。
    3.如果是闰年,进入switch case运算,计算出日期。
    4.如果不是闰年,也一样进入switch case运算,但运算的数值不同。
    5.求出日期是该年的第几天,并输出。

    3.2.2代码截图

    修改前

    修改后

    注:该优化参考同学思路,如有更好的优化方式,谢谢评论。

    3.3.3测试数据

    3.3.4提交列表及说明

    • Q1:一开始不清楚到底是switch day还是mouth,使代码在编译器上混乱,并且得不到正确答案。
    • A1:认真看清楚题目,分析算法,得知switch的是mouth,终于让程序编译成功
    • Q2:开始只知道以为的switch case 然后输出,使得整个代码看上去烦乱和复杂。
    • A2:后来认真分析,并在同学的帮助和讨论下,得到修改后的代码,也许还不够简洁明了,希望有更好的方案的同学能够通过评论,给我点建议。

    4.点评同学博客

    one

    two

    three

    four

    five

  • 相关阅读:
    x5开源库后续知识点
    仿抖音上下滑动分页视频
    Sp效率分析和理解
    ARCGIS 数据格式
    arcEngine开发之activeView.PartialRefresh(译)
    arcEngine开发之查询的相关接口
    arcEngine开发之查看属性表
    arcEngine开发之根据点坐标创建Shp图层
    arcEngine开发之加载栅格数据
    arcEngine开发之IMap、ILayer、IFeatureLayer和IFeatureClass关系
  • 原文地址:https://www.cnblogs.com/wxj991220/p/9777596.html
Copyright © 2011-2022 走看看