一、PTA实验作业


题目1:7-4 换硬币

2 .设计思路

  • 第一步:定义3个整型变量i,j,k用于循环,定义3个整型变量x,count,total分别用于储存零钱数额,换法个数,硬币数量;
  • 第二步:输入x,判断3个循环条件,是否同时满足条件x=i+2j+5k;
  • 第三步:如果满足,计算硬币总数,输入结果,count加1,并重复步骤2;
  • 第四步:如果不满足,重复步骤2,直至循环结束。
  • 第五步:输出count数量;

3.本题调试过程碰到问题及解决办法

问题:pta上总是显示部分正确。

解决方法:

输入13,结果正确;



输入19,则没有从大到小排序。



调试代码,发现循环时从主循环i(一分硬币)开始,由最小值1慢慢循环,直至结果最大,体现不出从大到小排序。与题目要求输出k(5分硬币)的最大值也不相符;所以调整循环位置,k变为主循环,i为嵌套循环。并且k,j,i从最大值开始循环,直至结果最小。通过下图改变循环主次,循环方向,得出正确答案。


4.本题PTA提交列表



题目2:

2 .设计思路

3.本题调试过程碰到问题及解决办法

问题1:repeat=1时结果正确,但是repeat=2时,不能进入循环。

如图,i=1,但是并没有执行循环,反而程序结束。

解决方法:return 0;在循环内,所以执行return时,程序结束。

问题2:在dev上答案都是正确,但是pta结果错误,开始调试

解决方法:

当i=1时,答案无误,但是max=91,min=85,而不是一开始的max=0,min=100,造成结果错误。

所以把max=0,min=100放在主循环内,当i++时,重新对max,min赋值!

4.本题PTA提交列表


题目3:7-8 餐饮服务质量调查打分

2 .设计思路

3.本题调试过程碰到问题及解决办法

问题:不知道怎么输出*,发现自己只能输出1:,而没有'星号',且不知道如何使'星号'叠加

解决方法:利用switch语句并定义一个变量储存grade个数,当grade等于相应分数,则叠加,再利用循环嵌套输出'星号'。

4.本题PTA提交列表

二、截图本周题目集的PTA最后排名

三、同学代码结对互评

1.互评同学名称

李梦冰

2.我的代码、互评同学代码截图

  • 我的代码

  • 梦冰的代码

分析梦冰的好与坏

不好:梦冰的代码没有体现题目的原意,题目是说:“按从小到大的顺序输出所有不超过2n−1的梅森数,每行一个。如果完全没有,则输出“None”。”。说明要循环一个周期后,完全没有的情况下输出none,而她是n=1,输出none,虽然结果正确,但是取巧了。没有设置一个变量来记录出现素数的情况。

好:梦冰的代码每一行都有注释,看了她的代码,我很容易看出了代码代表的意义。清晰明了,这样的代码即使出现错误,也容易调试找出错误。对于一个打代码的人,特别理解给代码注释的痛苦,梦冰这种难能可贵的精神值得每个人学习!

对比

我:我的代码从n=2开始,没有考虑1的情况,不严谨。而且没有注释,自己看自己的代码都需要时间来判断代码意义,还有定义变量很随意。

梦冰:代码很严谨,详情参照上述好与坏。

三、本周学习总结

1.你学会了什么?

学会了如何使用嵌套循环解决问题,学会了利用流程图代替语言说明设计思路。初步学会了利用伪代码解决难题,这样比起一开始没有思路而盲目打代码,情况好多了。

实参:主调函数的参数,可以为常量,变量,表达式。

形参:调用函数的参数,必须为变量。

函数通过将实参的值单向复制给形参,而且定义形参的值不会影响实参的值单向复制给形参。

定义自定义函数时,需要函数声明,定义,调用,结果返回。

2.本周的内容你还不会什么?

不会函数题目,因为才开始接触,不熟悉,多做题就好多了。

3.你碰到什么困难,打算如何解决?

终于会利用调试找出问题,但是有一些问题并不是利用调试能够找不出的,这个就很烦。看见同学莫名其妙改动一些代码,让代码变正确,而自己却不懂这些改动的意义,这就很无力。

不过我知道他们此刻的正确是通过无数遍尝试造就的,所以自己想要进步,多练必不可少。

小结

  感觉自己这一周进步比较大,很多代码错误都是通过自己调试找出的,而不是一味问同学。其次,写设计思路再也不痛苦了,因为流程图真的是一个好东西。通过流程图可以把很多思路清晰简单的表达出来,而过去写思路用语言表达太过于空洞。尽管一开始写流程图效率确实很低,但是进步的空间也是比较大的。最后,发现以前学的东西真的要会用,这次嵌套作业,我用了很多以前的分支知识,学以致用的感觉真的很爽。

C语言博客作业--嵌套循环的更多相关文章

  1. C语言博客作业—嵌套循环

    一.PTA实验作业 题目1:7-4 换硬币 1. 本题PTA提交列表 2. 设计思路 (1)定义整型变量money表示待换的零钱总额,p5表示5分硬币的数量,p2表示2分硬币的数量,p1表示1分硬币的 ...

  2. C语言博客作业06——结构体&文件

    C语言博客作业06--结构体&文件 1.本章学习总结 1.1思维导图 1.2.本章学习体会 在本周的学习中,我们学习了关于结构体和文件的内容.结构体的本身并不难,但以结构体为基础的链表还是让我 ...

  3. C语言博客作业6---结构体&文件

    C语言博客作业6---结构体&文件 1.本章学习总结(2分) 1.1思维导图 请以思维导图总结本周的学习内容.如下图所示: 1.2.学习体会 描述本周学习感受,也可以在这里提出你不理解地方.对 ...

  4. C语言博客作业5--指针

    C语言博客作业5--指针 1.本章学习总结(2分) 1.1思维导图 请以思维导图总结本周的学习内容,如下图所示: 1.2本章学习体会及代码量学习体会 1.2.1学习体会 描述本周学习感受,也可以在这里 ...

  5. C语言博客作业4--数组

    C语言博客作业4--数组 1.本章学习总结 1.1思维导图 请以思维导图总结本周的学习内容,如下图所示: 1.2本章学习体会及代码量学习体会 1.2.1学习体会 描述本周学习感受,也可以在这里提出你不 ...

  6. C语言博客作业3--函数

    C语言博客作业3--函数 1.本章学习总结 1.1思维导图 请以思维导图总结本周的学习内容,如下图所示: 1.2本章学习体会及代码量学习体会 1.2.1学习体会 描述本周学习感受,也可以在这里提出你不 ...

  7. C语言|博客作业10

    问题 回答 C语言 博客作业10 这个作业要求在哪里 作业要求 我在这个课程的目标是 熟练循环语句的用法 这个作业在哪个具体方面帮助我实现目标 pta作业 参考文献 <C语言程序设计> 1 ...

  8. C语言Ⅰ博客作业09

    这个作业属于那个课程 C语言程序设计II 这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2019-3/homework/10029 我在这个课程的 ...

  9. C语言博客作业08

    C语言I博客作业08](https://www.cnblogs.com/490-85-00-58-/p/11863312.html) 问题 回答 这个作业属于那个课程 C语言程序设计II 这个作业要求 ...

随机推荐

  1. js拖拽分析

    js拖拽分析 思路 1.三个鼠标事件,mousedown,mousemove,mouseup 2.可移动性absolute 3.边界限制 得到鼠标点击处和div边界的距离,然后得出top 和 left ...

  2. 【BZOJ5093】图的价值(第二类斯特林数,组合数学,NTT)

    [BZOJ5093]图的价值(第二类斯特林数,组合数学,NTT) 题面 BZOJ 题解 单独考虑每一个点的贡献: 因为不知道它连了几条边,所以枚举一下 \[\sum_{i=0}^{n-1}C_{n-1 ...

  3. 【BZOJ1212】L语言(AC自动机)

    [BZOJ1212]L语言(AC自动机) 题面 BZOJ 题解 很自然的,既然要匹配单词,那就全部都丢到\(AC\)自动机里面去 现在想想怎么匹配 先是\(AC\)自动机正常的匹配 如果此时这个位置能 ...

  4. 【LightOJ1282】Leading and Trailing(数论)

    [LightOJ1282]Leading and Trailing(数论) 题面 Vjudge 给定两个数n,k 求n^k的前三位和最后三位 题解 这题..真的就是搞笑的 第二问,直接输出快速幂\(m ...

  5. 【Luogu2711】小行星(网络流,最大流)

    [Luogu2711]小行星(网络流,最大流) 题面 题目描述 星云中有n颗行星,每颗行星的位置是(x,y,z).每次可以消除一个面(即x,y或z坐标相等)的行星,但是由于时间有限,求消除这些行星的最 ...

  6. [Luogu2664]树上游戏

    题面戳我 sol 点分.我们面临的最主要一个问题,就是如何在\(O(n)\)的时间内算出所有LCA为根的点对的贡献,还要分别累加到它们自己的答案中去. \(num_i\):每一种颜色的数量.你可以认为 ...

  7. 实战绕过某医院的waf

    最近遇到一个注入,我们直接来看吧.还是常规的单引号: 是一个很常规的注入.我们来尝试下获取一些信息: 然后发现是有防火墙的,安全狗.安全狗有很多针对php+mysql的绕过方法,比如这样:/*!uni ...

  8. Java集合中的HashMap类

    jdk1.8.0_144 HashMap作为最常用集合之一,继承自AbstractMap.JDK8的HashMap实现与JDK7不同,新增了红黑树作为底层数据结构,结构变得复杂,效率变得更高.为满足自 ...

  9. 大三小学期 web前端开发的一些小经验

    1.html是页面的布局设计,就是页面上要放哪些东西,比如登录界面需要按钮,输入框等等:css是被用于使用设计部件和布局,例如哪些部件放在哪里,多宽多大,是否有边框等:js/jQuery是用于实现函数 ...

  10. 找出k个数相加得n的所有组合

    Find all possible combinations of k positive numbers that add up to a number n,each combination shou ...