zoukankan      html  css  js  c++  java
  • C语言I博客作业04

    这个作业属于哪个课程 https://edu.cnblogs.com/campus/zswxy/CST2020-1
    这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2020-1/homework/11493
    这个作业的目标 会使用自定学义函数,能够清楚的描述好自己写的代码,学会阅读别人的代码,总结学过的内容。
    学号 <20208956>
    这个作业属于哪个课程 C语言程序设计II
    这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2020-1/homework/11378
    我在这个课程的目标是 会使用自定学义函数,能够清楚的描述好自己写的代码,学会阅读别人的代码,总结学过的内容。
    这个作业在那个具体方面帮助我实现目标 代码互评,PTA实验作业数据处理,学习总结
    参考文献 C语言程序设计(3)、C primer plus

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

    1.1 数字金字塔

    本题要求实现函数输出n行数字金字塔。函数接口定义:
    void pyramid( int n );
    其中n是用户传入的参数,为[1, 9]的正整数。要求函数按照如样例所示的格式打印出n行数字金字塔。注意每个数字后面跟一个空格。

    1.1.1数据处理
    数据表达:自定义函数中定义了i,j,k.全为整型。
    数据处理:
    首先进行for(i=1;i<=n;++i)确定行数。使用for循环嵌套for(j=1;j<=n-i;j++)输出每行的空格printf(" ")
    再接着进行for(k=1;k<=i;k++)输出每行数字printf("%d ",i),在每行的数字输出完后换行printf("
    ")
    
    
    1.1.2实验代码截图

    1.1.3 造测试数据
    输入数据 输出数据 说明
    4 小于5
    5 等于5
    6 大于5
    10 大于9
    1.1.4 PTA提交列表及说明

    编译错误:忘记打分号
    格式错误:输出结果中数字没有均匀间隔开。
    
    1.2 求组和数

    本题要求编写程序,根据公式算

    出从n个不同元素中取出m个元素(m≤n)的组合数。建议定义和调用函数fact(n)计算n!,其中n的类型是int,函数类型是double。

    1.2.1 数据处理
    数据表达:主函数中定义了m,n,都为整型、定义result为双精度浮点型。
    数据处理:result=fact(n)/(fact(n-m)*fact(m)),自定义函数fact()计算result。
    在fact()函数内部,定义i(整型)、product(浮点型),用到for循环语句求product:product=product*i,最后返回product的值。
    **函数参数:主函数main,自定义函数fact,自定义函数为double类型。实参m,n为整型,result为双精度浮点型。形参i(整型),product(双精度浮点型)。**
    
    1.2.2 实验代码截图

    1.2.3 造测试数据
    输入数据 输出数据 说明
    2 7 result = 21 m=2,n=7,m<n
    7 2 result = 0 m=7,n=2,m>n
    2 2 result = 1 m=n
    7 7 result = 1 m=n
    1.2.4 PTA提交列表及说明

    编译错误:for()里面的语句1和2之间用了用了中文分号。
    答案错误:在使用scanf()输入时将m与n的输入顺序弄反。
    答案错误:忘记在自定义函数后加上return product;
    
    

    2.代码互评(5分)

    同学代码截图



    自己代码截图

    1、处理问题的方式不同。第一种的做法是将三个数中其中两个数依次比较大小,依次筛选。第二种依次将三个数的位置进行交换。
    2、if和if-else的使用不同。第一种相较第二种会繁琐一些,但是更容易想到。
    3、定义变量的方式不同。
    

    3.学习总结(15分)

    3.1 学习进度条(5分)
    周/日期 这周所花的时间 代码行 学到的知识点简介 目前比较迷惑的问题
    第八周 18 220 printf,scanf的使用,以及int类型
    第九周 22 231 if语句分支结构、调用数学函数
    第十周: 25 255 for语句、字符型数据的使用 switch语句多分支结构、break语句和continue语句
    第十一周 28 600左右 switch语句,逻辑运算符,数组,自定义函数 多个循环结构的嵌套使用容易出错
    3.2 累积代码行和博客字数(5分)

    3.3 学习内容总结和感悟(5分)

    到目前为止,我已经明显的感觉到自己与别人的差距,很多同学的学习进度比我快很多,理解程度也比我更深。
    对自己的要求不够高,训练太少,我发现自己手写代码和在电脑上写相比,手写非常生疏。并且在遇到一个同样或类似的问题时并不能快速反应出来。
    学习效率很低,做同样的事情要比其它同学花更多的时间,不敢尝试自己的想法,怕麻烦。
    见识太少,遇到新的问题就束手无策,感觉自己还是阅读代码太少了,只管自己扎头写,没有多花时间去吸收别人的优点,发散性思维能力较弱。对一些难一点的题目有害怕的心理,不敢去做。
    接下来应该改正这些问题,多花时间与同学交流思想,阅读其他人的代码,多思考,不怕难,不怕麻烦,多尝试自己的想法,不断积累解决各种问题的方法,拓宽眼见。

    3.3.1 学习内容总结

    请用思维导图的形式将到目前为止所学的内容进行整理。
    采用专业的思维导图软件,建议可以是:MindManager、XMind、iMindMap、FreeMind、Mindomo、MindNode……等等之一。

    3.3.2 学习体会

    C语言的学习需要大量的积累,一定要培养解决新问题的能力,学会“偷懒”多思考寻找简单的方法,分而治之,要定期总结自己对各种问题的的解决方法、思路。
    多画流程图、思维导图等,在每次练习时尽量给自己设定合适的时间,尽量做到按时完成,训练自己的速度。

  • 相关阅读:
    base64 c/c++实现
    分段,分页图 http://www.joenchen.com
    CPUID讲解
    密码HASH特点
    C++ 编译器的函数名修饰规则
    exploit已完成,但没有创建会话exploit completed, but no session was created
    获取批处理文件所在路径
    dos/bat批处理教程——第四部分:完整案例
    第三部分:批处理与变量
    第二部分:特殊的符号与批处理
  • 原文地址:https://www.cnblogs.com/hongyinhongyin/p/13963382.html
Copyright © 2011-2022 走看看