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

    1.作业头

    这个作业属于哪个课程 https://edu.cnblogs.com/campus/zswxy/SE2020-2/
    这个作业要求在哪里 <<https://edu.cnblogs.com/campus/zswxy/SE2020-2/homework/11585 >>
    这个作业的目标 <回顾以往知识点,熟悉并运用各种语句(如while,do while语句)的使用解决循环问题并学会进行学习总结,从别人的作业中吸取经验>
    学号 <20209124>

    一、本周教学内容&目标

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

    二、本周作业头

    这个作业属于哪个课程 <C语言程序设计II>
    这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/SE2020-2/homework/11585
    我在这个课程的目标是 <学会编程,巩固所学知识提高实际编程能力,做到条理清晰有理有据并且通俗易懂>
    这个作业在那个具体方面帮助我实现目标 <能够理解代码中变量的实际意义以及类型等,并具有时长限制能够更好地督促自己学习,同时提高自己的学习能力也更好地掌握分支结构的使用,更好地了解并利用while,do while语句解决循环问题>
    参考文献 <《c语言程序设计实验指导》>

    三、本周作业

    1,PTA实验作业

    2,代码互评

    3,学习总结

    四、作业格式

    1.PTA实验作业

    排名图片

    1.1 野王认证

    lo (单挑), 小刘先手, 每次使对方血量减少自己攻击力 数值, 当一方血量小于等于 0 时被击败,小刘自认为自己能成为认证野王, 现在想让你帮助他判断 自己能否成为认证野王

    输入格式:
    一共三行

    第一行两个整数 h, a,代表小刘英雄的血量, 攻击力

    第二行两个整数 H,A,代表室友英雄的血量, 攻击力

    第三行两个整数 ph, pa, 代表皮肤增加的血量,攻击力

    输出格式:
    如果小刘能击败无限多的室友成为认证的野王, 则输出“The king of the wild certification!”;

    否则如果小刘不可以击败任何一个室友, 则输出 “I'm too dishes!”;

    否则输出一个整数, 表示小刘击败的室友数量,

    1.1.1数据处理

    数据表达:使用整型函数定义h, a, H, A, ph, pa,  count = 0, t;并且相关数据进行了赋值,由题意对数据加以判断并利用while语句和if-else语句进行运行,从而得出最后答案来
    数据处理:使用了新学的while语句进行处理,对于不确定的循环次数进行判断从而是否进行程序的运行处理,再将if-else语句嵌入其中,以达到题目目的,输出最后的答案
    **伪代码**
    Begin**程序开始**
    输入 h, a, H, A, ph, pa,  count = 0, t
    h ←h + hhh;
    a ←a + aaa;
    x ←hh;
    while 1{
    if a >= H 则 The king of the wild certification! 返回 
    否则 
    x = x - a
    if x <= 0 则  x = hh  击败室友次数加一  继续 
    否则
    h = h - A
    if h <= 0 则   返回 
    }
    否则
    if  h <= 0 && count == 0 则  I'm too dishes! 
    否则 
     printf 答案 返回 
    End (算法结束)
    

    1.1.2实验代码截图

    1.1.3造测试数据

    按照以下表格,输出你的程序面向各种测试数据结果,除了题目给出的测试数据,可以自己再造其他临界数据,越多越好,并加上必要说明

    输入数据 输出数据 说明
    2 1 , 3 1 , 3 0 2 小刘只能打败2个室友
    10 1 , 10 10 , 3 0 I'm too dishes! 小刘不行
    10 10 ,3 1 , 3 0 The king of the wild certification! 小刘是野王

    1.1.4 PTA提交列表及说明

    根据PTA提交列表,简要描述调试程序碰到的问题及解决办法

    提交列表说明:

    1.编译错误:逻辑无错误,有些语句后面缺乏必要的符号,偶尔缺少必要的符号等还将scanf语句后的;错误打成了中文符号,造成了本题的编译错误并且本题只有编译错误
    2.解决方法:发现题目编译错误后仔细检查并在检查过程中发现了符号的错误,询问同学查询c语言相关书籍确认并改正过来后编译正确
    

    1.2找出一批学生的最高分

    本题要求编写程序,找出最高分。

    输入格式:
    输入在一行中给出一系列非负整数,其间以空格分隔。当读到负整数时,表示输入结束,该数字不要处理。

    输出格式:
    在一行中输出最高分。

    1.2.1数据处理

    数据表达:使用整型函数定义变量并使用while语句进行循环次数判断,再利用if语句嵌入其中最后利用printf语句输出最后的答案
    数据处理:使用scanf语句进行赋值处理,在利用while语句的同时加入if语句,这样的处理使得代码长度大大缩短,得出的答案也更明确
    **伪代码**
    begin**程序开始**
    输入a,b=0
    条件为a>=0
    如果a>b
    则令b=a
    

    1.2.2实验代码截图

    1.2.3造测试数据

    按照以下表格,输出你的程序面向各种测试数据结果,除了题目给出的测试数据,可以自己再造其他临界数据,越多越好,并加上必要说明

    输入数据 输出数据 说明
    78 23 56 89 -5 89 说明这组数据的最高分为89
    120 49 79 9 0 120 说明这组数据最高分为120
    4 98 56 22 11 77 98 说明这组数据最高分为98

    1.2.4 PTA提交列表及说明

    根据PTA提交列表,简要描述调试程序碰到的问题及解决办法

    提交列表说明:

    1.运行超时:我改正后才发现两次运行超时的原因是同一个,前面一直修改的都是正确的,所以造成了两次超时,原因是由于未对if语句中令a=b后对a进行的赋值而产生了不该产生的错误
    2.解决方法:我是通过查看同学代码解决问题所在的,但由于和同学代码所用方法不一样,因此是在交流方法中发现未赋值,改正过来后得出最后答案,最后编译正确
    

    2.代码互评

    找2份同学代码,和自己代码比较,建议互评代码尽量找代码风格差异较大。
    同学代码截图

    自己代码截图

    不同地方
    1.同学定义的是srzrs和jg(不知道是啥意思),而我用的是最简单是n
    2.同学的整体框架看起来和我差不多,但由于同学的英文使用看起来比我的更复杂(实际差不多)
    3.同学在语句后使用了一个代换处理(srzrs=jg),而我则没有,我在前面的处理中就已经有进行了,最后使用return 0结束程序

    同学代码截图

    自己代码截图

    不同地方
    1.同学又使用了一些奇奇怪怪的英文代码,而我使用的又是一些较为通俗的代码
    2.同学的一些处理让她的代码看起来更为复杂了,而我的比较简单,更通俗易懂点
    3.同学使用了while语句,而我没有,我只用了if else 语句

    3.学习总结

    3.1 学习进度条

    周/日期 这周所花的时间 代码行 学到的知识点简介 目前比较迷惑的问题
    8 17 120 Hello world和其变形
    9 18 300 选择结构,求华摄温度 判断语句if else
    10 19 400 循环结构 循环结构和循环体的区分
    11 17 420 定义和调用函数,生成乘方表与阶乘表 学会定义函数,以及完整代码的格式和语句的顺序问题
    12 18 400 if-else语句结构,多分支结构,以及掌握字符型数据类型和逻辑运算符的使用 语句结构的运用选择和程序的基本框架
    13 27 430 switch语句的使用 对于switch里其他程序的镶嵌以及switch的灵活运用
    14 30 450 熟运用while和do-while语句解决实际编程问题 对于判断次数无法确定

    3.2 累积代码行和博客字数



    3.3 学习内容总结和感悟

    3.3.1 学习内容总结

    3.3.2 学习体会

    请回顾自己的本周的学习过程,描述学习感受,也可以提出你不理解的地方、对教师教学建议等。如果你有新的想法或者新的方法,请及时记录下来。

    ***1.学习了新的知识固然会感觉到开心,这周学习了while,do while语句,知识是不断积累不断进步的,难度在增加也是因为知识储备的增加

    ***2.打字慢的短板依然存在,打字快的人在输入文字以及代码中占有极其重要的优势,希望自己还能够继续加油

    ***3.真的的努力是别人看不见的,我看过很多人在其他课堂上打代码做pta作业,作业量固然很多,但对于其他课程我们也同样不能松懈,不能以60为目标

    ***4.学习过程中,一个题目思考了很久了,都不能得出答案的情况下就需要去寻找答案或者去探讨,不能坐以待毙,毕竟时间不等人

    ***5.代码的难度是因人而定,每个人虽然学习的课程一样但是知识储备并不一样,即使大致相同,或许换个适合自己的思路,更容易得出答案来

    ***6.代码pta实验作业中的解释真的不知道咋说了,因为问题都说了出来,还希望助教小姐姐能放一马啦

    ***7.年轻人的资本就是年龄,希望大家都能在适当的年纪里做最好的自己,加油!!

  • 相关阅读:
    map初始化
    map
    sort排序
    455分发饼干
    392判断子序列
    vector遍历
    vector删除数据
    VC-进程间通信(InterProcess Communication,IPC)
    Oracle 11g 安装和登录(windows)
    控制台输出宽字符wchar_t的中文显示问题
  • 原文地址:https://www.cnblogs.com/coolgaijq3707/p/14088265.html
Copyright © 2011-2022 走看看