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

     

    **C语言I博客作业08

    这个作业属于那个课程C语言程序设计||
    这个作业要求在哪里 作业要求
    我在这个课程的目标是 精通C语言
    这个作业在那个具体方面帮助我实现目标 对于while语句的灵活运用
    参考文献 参考

     

    PTA作业完成情况:

     

     

    题目名:1.对于给定的正整数N,求它的位数及其各位数字之和。

    数据处理:

    数据表达:定义n,m,a为整型变量。
    数据处理:

    {
    int n=0 ,m ,a=0;
    scanf(输入n)
    while n!=0
    a←-a+n%10
    n←n/10
    do m←-m+1
    输出m a的值

    }

    实验代码截图:

     

     

     

    题目名:2.一条蠕虫长1寸,在一口深为N寸的井的底部。已知蠕虫每1分钟可以向上爬U寸,但必须休息1分钟才能接着往上爬。在休息的过程中,蠕虫又下滑了D寸。就这样,上爬和下滑重复进行。请问,蠕虫需要多长时间才能爬出井?

    这里要求不足1分钟按1分钟计,并且假定只要在某次上爬过程中蠕虫的头部到达了井的顶部,那么蠕虫就完成任务了。初始时,蠕虫是趴在井底的(即高度为0)。

     

    数据表达:定义N ,U ,D ,L ,t  为整型变量
    数据处理:

    {

    int N,U,D,L,t;
    scanf(输入N U D )
    while L<N
    do t←t+1
    L←L+U
    if(L>=N)
    跳出循环
    L=L-D
    do t←t+1
    输出t的值
    }

     

    实验代码截图:

     

    输入数据输出数据说明
    321 3 6 1.题目样例
    123 3 6 自我创建数据1
    1111 4 4 自我创建数据2

     

     

    输入数据输出数据说明
    12 3 1 11 2.题目样例
    10 2 1 17 自我创建数据3
    100 55 15 5 自我创建数据4

     

    PTA提交列表及说明:

     

     

    Q1:我在韩信点兵的时候运用for循环进入了死循环导致运行超时,是for语句的条件问题

    A1:将for语句括号里改成(i % 5 == 1) && (i % 6 == 5) && (i % 7 == 4) && (i % 11 == 10)  ps:以前是什么我忘记了,只记得改了条件就正常输出2111了。

     

     

    第三题真的搞死我了,搞了近四个小时,最终借助了百度的力量完成了作业。

    Q1:二次的部分正确都是输入字符,只输出0而不输出其他数字。终归是我对题目理解不透彻,题目要求输出一组二进制字符然后再输出对应的十进制数当输入回车键时,输入结束。若输入非二进制字符,输出error input!

    A1:而想我将输入的数据看成十进制,然后进行除十,使用它的余数来做判断,然后在将它化为十进制,我认为理论上是可行的,但是在一万次DEV上的错误输出,我放弃了想法。

    借助百度后我理解如下,先定义两个变量,其两个用来辅助存放和判断,加入char来存放二进制字符 char ch 利用while语句,其中用一号辅助变量将二进制转化为十进制。

    利用switch语句来对非法字符的判断ch=1 or 0 的选择 之后利用二号辅助变量来辅助判断是否输出,break终止循环,最后的if语句使用二号辅助变量来控制是否输出一号变量的值。

     

    代码互评:

    我的代码:

     

     

     

    同学的代码:

     

     

     

    比较后,我的第一感觉就是不是很喜欢这位同学的格式

    同学利用了for语句来累加计算大月份的和and小月份的和,他将二月份单独隔出来进行闰年与否的判断,之后再总和,而我是直接计算所有月份的总和,用一个if-else完事。相比而言,他的显得更加计算机化,我就比较人工了。再者,他在执行switch语句的时候break用得很少,想必他对switch语句有个很深的理解。

    除了格式外,我认为我可以向他学习

    学习总结:

     

     

    日期这周所花的时间代码行学到的知识简介目前比较迷惑的问题
    10/7--10/13 10+个小时 100+ if-else语句,多种运算符、少数运算规则等 理解每个代码意思和语句的使用
    10/13--10/20 6+个小时 100+ 学习for循环语句 熟悉利用for语句
    10/20--10/27 5+个小时 100+ 学习了函数的自定义 熟练的自定义函数和使用
    10/28--11/3 6+个小时 150+ 进一步认识if语句,进一步熟悉语句之间的结合 熟练的掌握所学内容
    11/4--11/10 5+个小时 150+ 学习了switch语句的运用 熟练的掌握switch的使用
    11/11--11/16 7+小时 72 学习了while语句的运用 熟练的掌握while语句的使用和各个语句的嵌套

     

    学习内容总结:

     

     

    学习体会:

    此次的作业比往常吃力了些,但其实写出来的代码不长。

    我有些借助了百度和同学的帮助才完成了作业。

    说实话,有点难啃,代码已经可以说出个一二了,但是灵活运用却还是差的很远。

    时常感觉自己脑海里的东西很乱,想拿出来用却总是卡壳或者短路。

    但是不管怎么样,我还是感觉自己在进步,尽管进步得很缓慢,尽管学过的东西不是很熟悉,尽管自己离梦想差一大截,但至少,我从未放弃,今后也是如此,不会放弃......

    我相信自己能在今后的日子一步步完善自己,完善知识体系。

     

    今后的日子也要更加加油,坚定自己的目标,不忘初心。

  • 相关阅读:
    实验 4:Open vSwitch 实验——Mininet 中使用 OVS 命令
    实验 2:Mininet 实验——拓扑的命令脚本生成
    软工第一次作业——自我介绍
    博客园美化
    实验 1:Mininet 源码安装和可视化拓扑工具
    软工实践个人总结
    结对编程之学术家族树
    软件工程实践结对编程作业(需求分析与原型设计)
    软件工程实践个人编程作业
    软件工程实践第一次个人作业
  • 原文地址:https://www.cnblogs.com/LQNB/p/11858358.html
Copyright © 2011-2022 走看看