zoukankan      html  css  js  c++  java
  • C语言|博客作业10

    这个作业属于哪个课程 C语言程序设计II
    这个作业的要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2019-1/homework/10095
    我在这个课程的目标是 学习基础程序语言C语言,基本掌握C语言的思维方向
    这个作业具体在哪个方面帮助我实现目标 编程训练,思维构建,逻辑推导,字符型变量,嵌套循环的练习
    参考文献 百度,C语言程序设计

    1.PTA实验作业

    1.1 题目1

    7-8 输出三角形字符阵列

    1.1.1数据处理

    数据表达:变量i是行数的计数器;变量j是每行列数的计数器;n是输入的数,也是用来监控每行列数是否完成的;num是每一行的总列数;sum是总行数
    数据处理:
    #include<stdio.h>
    int main ()
    {
        定义变量
        用户输入
        将sum以及num赋值
        while (i<num)
        {
            把num赋值给n,以免在内循环中n值丢失
            for (j=0;j<num;j++)
            {
                输出一个字母
                字符累加
                n累减1,使得在该行的字母不会无限增加
            }
            输出换行
            累加行数
            num累减
        }
        
        return0;
    }  
    

    1.1.2实验代码截图

    1.1.3 造测试数据

    输入数据 输出数据 说明
    4 A B C D <换行>E F G <换行>H I <换行>J 第一行和第一列都是4
    3 A B C <换行>D E <换行>F 第一行和第一列都是3

    1.1.4 PTA提交列表及说明


    格式错误1、2:在while语句的条件句中我将条件设置为i<=sum,所以在输出结果中多了一次换行。在此感谢助教罗鹏同学的帮助
    答案正确:将条件改为i<sum,答案正确。

    1.2题目2

    7-3 梅森数

    1.2.1数据处理

    数据表达:变量sum是最后输出的梅森数;num是用户输入变量;i是外循环的计数器;j是内循环的计数器;k是在内循环的if-else语句里的计数器
    数据处理:
    #include<stdio.h>
    #include <math.h>
    int main ()
    {
        定义变量
        用户输入
        for(i=2;i<=num;i++)
        {
            计算sum
            for(j=2;j<=sum的平方)
                if (判断sum/j是否与0相等) break;
            if(j>sum的平方)
            {
                输出梅森数
                k++;
            }
        }
        if (k==0)
            输出“None”
    
        return 0;
    

    }

    1.2.2实验代码截图

    1.2.3造测试数据

    输入数据 输出数据 说明
    1 None 最小梅森数是3
    6 3<回车>7<回车>31 2的6次方有三个梅森数
    19 3<回车>7<回车>31<回车>127<回车>8191<回车>131071<回车>524287 2的19次方有7个梅森数
    21 3<回车>7<回车>31<回车>127<回车>8191<回车>131071<回车>524287 因为给出的范围是输入需要小于20,所以当输入21时,输出仍然是输入十九是的数字

    1.2.4PTA提交列表及说明


    答案正确:之前的思路只有一个大概的轮廓,写出来也总是不能对,后面再网络上百度了这道题,看到了大佬们的写法,才按着思路写下来。但可能因为不是我完全的独立思考,有些地方写完了我也不能解释的很清楚

    1.3题目3

    7-4 同构数

    1.3.1数据处理

    数据表达:变量i是计数器,也是同构数
    数据处理:
    #include<stdio.h>
    int main ()
    {
        定义变量
        for (i=1;i<1000;i++)
            if (判断i是否是同构数)
            输出i(记得留出六个位数)
    

    1.3.2实验代码截图

    1.3.3造测试数据

    输入数据 输出数据 说明
    1 5 6 25 76 376 625 无输入

    1.2.4PTA提交列表及说明


    答案正确:刚开始我用的平时做题的思路想的,但是一直输出不了,那时的代码也不能调试,一调试就直接结束。后面看到别人用的是直接输出,我也就这么做了(捂脸),老师说不可以,我就捡起最开始的思路来想。虽然最后还是没有想出来,而且好复杂的样子。
    答案错误:这就是我在看了同学代码之后的尝试。我忘记把1也设定进去了
    答案正确:我也不知道这是什么神奇代码,耗时居然只有2ms?但是我完全没有印象
    答案正确:答案错误改正之后的结果。同学的这段代码我真的想不到。利用题目给出的范围判断同构数,很简单也很巧妙。

    2.代码互评

    同学代码:

    我的代码:

    1、同学的代码是直接用两个for排出行和列的。我的是用了while和for
    2、我的还是太麻烦了,而且代码很长,定义的变量很多,缺点太多了
    同学代码:

    我的代码:

    1、同学代码很长,但是她的方法就是我之前想到的方法。
    2、我是利用了题目给出的范围,她是在for循环里面嵌套if-else

    3.1学习进度条

    周/日期 这周所花的时间 代码行 学到的知识点简介 目前比较迷惑的问题
    9/28-10/05 约2小时 26行 输入模式的学习,练习 熟练度不够,对于输入输出过程基本是完全不理解
    10/05-10/12 约6小时 86行 输入和输出学会了,不同的结构,语句,运算的学习等等 熟练度不够,知识存储量不够,导致编程的时候经常需要查阅资料
    10/12-10/18 约5小时 91行 可以自行编程,只有编程完成后出现错误才需要向同学求助。基本操作和思路学会,但是有些不够熟练。学习了代码的调试 不能熟练自主操作调试,编程不够熟练
    10/18-10/26 约12小时 127行 可以看着书写出来函数定义基操 有时的变量定义拿不准,总是会多定义一些莫名其妙的变量,我想这是函数定义不够熟练、对题目的理解不到位的原因吧
    10/26-11/03 约15小时 131行 if-else的嵌套,逻辑运算符,字符型变量 字符型变量还不理解
    11/03-11/8 约17小时 121行 switch语句 思维逻辑还有点混乱
    11/8-11/22 约16小时 106行 嵌套循环和break,continue的使用 在做比较有难度的题时,独立思考的结果不理想
    11/22-11/29 约20小时 90行 之前的内容的深度学习 在思考的时候总会比别人想的复杂

    3.2 累积代码行和博客字数

    3.3 学习内容总结和感悟

    3.3.1 学习内容总结

    思维导图贴图:

    3.3.2学习体会

    本周学习结束了。过不了多久期末考试就要到来了。在这段时间的学习中,嵌套循环的练习进行的还不错,字符型变量也能够理解了。但是在思考的时候总是比别人慢一步。总是说自己要多做题,多刷题,可是到了最后连作业也完成的够呛。总是要在后面完成。希望不要挂科吧......

  • 相关阅读:
    Gym102501G Swapping Places(拓扑排序)
    2019SWERC题解
    CF364D Ghd(随机化)
    CF500E New Year Domino(并查集+栈)
    CF280C Game on Tree(期望)
    CF1093G Multidimensional Queries(线段树)
    CF677D Vanya and Treasure(最短路)
    CF788C The Great Mixing(最短路)
    queryset高级用法:prefetch_related
    queryset高级用法:select_related
  • 原文地址:https://www.cnblogs.com/zi-jin/p/11938215.html
Copyright © 2011-2022 走看看