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

    C语言I博客作业07

    这个作业属于哪个课程 https://edu.cnblogs.com/campus/zswxy/SE2020-2
    这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/SE2020-2/homework/11585
    这个作业的目标 <了解while和do-while循环结构,认识伪代码,将所学循环结构联系起来>
    学号 <20209142>

    一、本周教学内容&目标

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

    二、本周作业

    1、PTA实验作业

    2、代码互评

    3、学习总结

    三、作业格式

    1.PTA实验作业

    1.1:小刘刚打上了巅峰赛2500 分, 就迫不及待地向他们室友发起了solo(单挑他们会选择不一样的英雄,每个英雄都只有两个属性(血量,攻击力 ), 小刘有很多皮肤 会给他带来增益( 减损)效果(增加或者减少血量和 攻击力)然后小刘和他的室友进行 solo (单挑),小刘先手, 每次使对方血量减少自己攻击力 数值, 当一方血量小于等于 0 时被击败,小刘自认为自己能成为认证野王, 现在想让你帮助他判断 自己能否成为认证野王

    1.1.1数据处理
    数据表达:用了h,a,H,A,ph,pa,i,Hl,这些变量整型。
    数据处理:用了if-else分支结构和while循环结构,表达式:while(h!=0{H=H-a;if(H>0){h=h-A;}else{H=H1;i++;}if(h<=0){goto end;}},说明:如果小刘的攻击力,大于他室友的生命值,他就一直赢,如果小刘的攻击力不大于他室友的生命值,则他的室友和他进行车轮战,再如果小刘的生命值比他室友的攻击力低,他就一把都赢不了。
    

    伪代码:


    h←h+ph
    a←a+pa
    if a≥Hl
    then printf "The king of the wile certification!"
    while h≠0
    H←H-a
    if H>0
    then h←h-A
    else H←Hl
    then i++
    if h≤0
    ent
    if i←←0
    then printf"I'm too dishes!"
    else printf"%d " i


    1.1.2实验代码截图

    1.1.3 造测试数据
    输入数据 输出数据 说明
    2 1,2 1,3 0 4 小刘的攻击力小于室友的生命值,然后室友攻击小刘一次,进行车轮战,最后战胜4个人。
    1 3,1 2,1 3 The king of the wild certification! 小刘的攻击力大于他室友生命值,所以一直赢。
    1 1,5 3,1 1 I'm too dishes! 小刘的攻击力小于他室友的生命值,然而他室友的攻击力大于小刘的生命值。
    9 1,2 1,9 0 17 小刘的攻击力小于室友的生命值,然后室友攻击小刘一次,进行车轮战,最后战胜17个人。
    1.1.4 PTA提交列表及说明


    提交列表说明

    部分正确:在进行了一系列的循环结构,一些测试点的答案发生错误。
    部分正确:通过一些循环结构,只看到了前面一部分,对后面输出的答案就有点不负责了,导致答案错误。
    编译错误:输出过程中,没有对一些结构包括进行区分,导致代码编译不出。
    

    1.2:日本数学家古角静夫研究自然数时,发现一个有趣现象:“如果是个偶数就除2,如果是奇数就乘以3加1”,经过有限个这样的处理步骤,最后一定能得到1. 任意输入一个自然数,给出得到结果1的运算过程。

    1.2.1数据处理
    数据表达: 用了n变量,是整型。
    数据处理:用了if-else分支结构和while循环结构。表达式:if(n%2==0{n=n/2;printf("%d/2=%d
    ",2*n,n);}else{n=n*3+1;printf("%d*3+1=%d
    ",n/3,n/3*3+1);}通过一个while循环结构,在里面弄一个if-while分支结构。
    

    伪代码:


    if n=1
    then printf "0"
    while n≠1
    if n%2=0
    then n÷2
    printf "%d÷2←%d " 2xn n
    else
    then n←nx3+1
    printf "%dx3+1←%d n÷3 n÷3x3+1


    1.2.2实验代码截图

    1.2.3 造测试数据
    输入数据 输出数据 说明
    5 5*3+1=16,16/2=8,8/2=4,4/2=2,2/2=1 是个偶数就除2,如果是奇数就乘以3加1,让5经过这一系列变化,最后输出结果为1。
    6 6/2=3,33+1=10,10/2=5,53+1=16,16/2=8,8/2=4,4/2=2,2/2=1 是个偶数就除2,如果是奇数就乘以3加1,让6经过这一系列变化,最后输出结果为1。
    3 33+1=10,10/2=5,53+1=16,16/2=8,8/2=4,4/2=2,2/2=1 是个偶数就除2,如果是奇数就乘以3加1,让3经过这一系列变化,最后输出结果为1。
    1 0 在条件中输入1输出0。
    1.2.4 PTA提交列表及说明


    提交列表说明

    段错误:在这道题目中,各个部分的意识相互矛盾,并且scanf()中&没输出。
    编译错误:在代码中,if-else和while相互矛盾,导致编译器输出不出,导致编译错误。
    

    2.代码互评

    同学代码截图1:

    自己代码截图1:

    1:同学结束输出是break,我的goto end。
    2:同学输出的变量是hh,aa;我的是H,A。
    3:同学在while结构中用了if,我在while结构中用了if-else。
    
    同学代码截图2:

    自己代码截图2:

    1:同学用的是for循环结构,我用的是do-while循环结构。
    2:同学用的是整型i,n;双精度num,sum;我用的都是整型count,number,sum,x。
    

    3.学习总结

    3.1 学习进度条
    周/日期 这周所花的时间 代码行 学到的知识点简介 目前比较迷惑的问题
    第八周 15h 346 了解代码的输入输出 变量的表示
    第九周 25h 541 进行变量计算,了解整型、浮点型 各个结构不清楚
    第十周 40h 749 对for结构的运用 对复杂问题的变量提供不全
    第十一周 35h 659 对主函数和其他定义函数的运用,对if结构的了解 对定义函数代码结构的不熟悉
    第十二周 43h 756 了解了字符型和if-else分支结构 对if-else分支结构{}用的不熟练,逻辑思维没有到位
    第十三周 39h 620 学习到了switch结构,这种结构使代码看起来更加的整洁 switch结构的使用熟练问题,if-else逻辑思维不强
    第十四周 45h 652 学习到了while和do-while循环结构,让代码看起来更加舒服,让我多一种思维方式 对分支结构和for循环还是不熟练
    3.2 累积代码行和博客字数

    3.3 学习内容总结和感悟
    3.3.1 学习内容总结

    3.3.2 学习体会

    1:学习了do-while和while循环结构,对这种结构很喜欢,非常符合我的胃口。

    2:这周学习了很多,但是对一些数学思想还是不行,代码的严谨性还是不够。

    3:这周作业的难度还是在的,一道题目需要去反复尝试很多遍,很考验耐心,但是做出来后的成就感也十分美好。

    4:C语言是一个注意过程的一种语音,它讲究一步一步来,不能直接就将结果包装起来,是一个特别依赖于思维的一种语音。

    5:风吹过风景的美丽,让我们用行动代替想去欣赏!

  • 相关阅读:
    [LuoguP2161] 会场预约
    [LuoguP1198] 最大数
    [LuoguP1484] 种树
    [LuoguP1801] 黑匣子
    [LuoguP1196]银河英雄传说
    [LuoguP1345] 奶牛的电信Telecowmunication
    [LuoguP1119]灾后重建
    【笔记】一元函数微分学
    【复习】Listening and Reading Comprehension
    【笔记】一元函数的不定积分
  • 原文地址:https://www.cnblogs.com/869869tmz/p/14090462.html
Copyright © 2011-2022 走看看