• C语言I博客作业08


    一、本周教学内容&目标

    第4章 循环结构 4.1-4.2 熟悉使用while和do-while结构解决问题。

    二、本周作业头

    这个作业属于哪个课程 c语言程序设计II
    这个作业要求在哪里 https://.com/edu.cnblogscampus/zswxy/CST2019-3/homework/9978
    我在这个课程的目标是 了解、运用并学会自己编辑c语言
    这个作业在哪个具体方面帮助我实现目标 能帮助我更了解c语言,练习c语言
    参考文献 《c语言程序设计》《提问的智慧》

    三、本周作业

    PTA实验作业
    代码互评
    学习总结

    四、作业格式

    1.PTA实验作业

    1.1 求整数的位数及各位数字之和

    对于给定的正整数N,求它的位数及其各位数字之和。

    1.1.1数据处理

    数据处理

    运通了四个变量N,n,num,sum,均为整型变量,分别表示输入数字,和等价输入数字,位数,和各位数和。
    

    数据表达伪代码

    定义变量N,n,num,sum
    输入N
    让n与N等价
    while(使循环运行的条件){
            n/=10;
            num++;
            sum+=n%10;
    }
    输出num,sum+N%10//while循环是个位数的数字没有加入进去//
    返回0
    

    1.1.2实验代码截图

    1.1.3 造测试数据

    输入数据 输出数据 说明
    0 0 0 最小整数
    12001 5 4 数字中间有连续0
    999999999 9 81 最大整数

    1.1.4 PTA提交列表及说明

    提交列表说明:

    **编译错误**:N和n弄混了。
    **编译错误**:多添加一个n是逗号用的是中文符。
    **编译错误**:给输出变量前面也加了个&。
    **编译错误**:改动时不小心把num++后面的封号删掉了。
    

    1.2jmu-c-二进制转10进制

    输入一组二进制字符,输出其对应的十进制数。当输入回车键时,输入结束。若输入非二进制字符,输出error input!

    1.2.1数据处理

    数据处理

    定义整型变量sum,s,字符型变量ch,sum为要输出的十进制数,定义一个s来判断非二进制数。
    

    数据表达伪代码

    定义变量整型变量sum,s;
    字符型变量ch;
    输入ch;
    while(ch!='
    '){
            if(ch=='
    '){
                跳出循环
            }
            else if(ch!='0' && ch!='1'){
                使s等于0;跳出循环;
            }
            else{
                sum=sum*2+ch-'0';
            }
        }
    if(s==0)
        输出error input!
    else
        输出sum
    

    1.2.2实验代码截图

    1.2.3 造测试数据

    输入数据 输出数据 说明
    0 0 最小ch
    11111111 225 样例
    10 2 个位数为0

    1.2.4 PTA提交列表及说明

    提交列表说明:

    **部分正确**:这题我开始在Dev上做了很多次,一直是部分正确,改了很多次也没改出来,最后百度了一下,发现要用字符来表示。
    

    2.代码互评

    同学代码截图

    自己代码截图


    1)第一份代码定义了四个整型变量,而第二份代码定义了五个整型变量。
    2)两份代码用的都是while循环结构中嵌套if-else分支结构,但思路却大不相同,第一份代码是井的长减去虫子爬上是长度,从而减少了一个变量的使用,同时用if-else将虫子向上爬的长度和向下滑的长度分开,最终得到结果。而第二份代码则是利用了时间:奇数时间时虫子向上爬,偶数时间向下滑,用if-else将两种情况分开,最终得出结果。

    同学代码截图

    自己代码截图


    1)第一份代码定义了两个变量,一个字符型,一个整型;而第二份定义了三个变量,一个字符型两个整型。
    2)第一份代码运用了while循环结构嵌套switch多分支结构,而第二份代码运用的是while循环结构嵌套if-else分支结构。
    3)第一份代码中使用了getchar(),有些看不懂。

    3.学习总结

    3.1 学习进度条

    周/日期 这周所花的时间 代码行 学到的知识点简介 目前比较迷惑的问题
    1/16~1/22 1h 42 输入,输出文件
    2/23~2/29 3h 31 使用int定义变量
    3/7~3/10 6h 93 选择型流程结构,使用double定义变量 输出printf,scanf中%后面使用d或者f或者lf分不清
    4/15~4/18 6h 100 循环流程结构 段错误的原因
    5/22~5/26 8h 104 调用函数,形参和实参 while的循环原理
    6/29~6/22 10h 166 字符,ASCⅡ码集,套嵌if-else分支 for循环边界值
    7/5~7/8 5h 141 switch多分支结构
    8/12~8/15 7h 159 while循环 使用字符解题不怎么会,定义变量所占空间大小

    3.2 累积代码行和博客字数

    3.3 学习内容总结和感悟

    3.3.1 学习内容总结

    3.3.2 学习体会

    感觉这周题目有点难,在完成PTA作业的过程中,我遇到了很多不同方面的难题,甚至有些题目都读了好几遍才理解题意。像是第二题韩信点兵,最开始读题的时候我整个人都是蒙的,后来把它想象成一个数学问题列方程解答就知道了。还有第三题,我完全没有想到要用字符来解答,错了无数次,还是百度了一下,才恍然大悟。
    但正是因为题目难,很多知识点不会,为了完成题目,我们才会努力去寻找答案,从而收获更多知识。

  • 相关阅读:
    我也受不了这扯蛋的IE6/7了
    子元素的margintop与父元素合并的问题
    在是否使用浮动上的纠结
    CSS中zoom:1是怎么回事
    java.util.ConcurrentModificationException异常解决方法
    【转】单例模式
    servlet中实现页面跳转的两种方法
    tomcat日志,用户以及启动时的一些问题
    【转】自定义 Java Annotation
    jsoup的使用
  • 原文地址:https://www.cnblogs.com/xiamudaren1/p/11864874.html
Copyright © 2020-2023  润新知