BlackR

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

1.作业头

这个作业属于哪个课程 https://edu.cnblogs.com/campus/zswxy/SE2020-2
这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/SE2020-2/homework/11585
这个作业的目标 熟悉使用while和do-while结构解决问题
学号 20209121

一、本周教学内容&目标

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

二、本周作业头

这个作业属于那个课程 C语言程序设计II
这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/SE2020-2/homework/11585
我在这个课程的目标是 熟用C语言
这个作业在那个具体方面帮助我实现目标 熟悉使用while和do-while结构解决问题
参考文献 <C语言程序设计>

三、本周作业

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

四、作业格式

1.PTA实验作业(20分/题)

从PTA题目集中选出2个你最满意的题目完成以下内容,选择题目难度越大,分值越高,每题20分(每项5分)
请再此处列出自己的排名图片,如:

1.1 题目名1 循环-古角猜想

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

1.1.1数据处理

数据表达:用了整型变量n,n表示输入的一个自然数。
数据处理:表达式:n!=1,n%2==0;流程结构:用了if-else语句,while循环语句。
伪代码:
Begin(算法开始)
输入 n
scanf 输入一个自然数
while n!=1
if (n%2==0)
then [n/=2]
else [n=n*3+1]
End (算法结束)

1.1.2实验代码截图

1.1.3 造测试数据

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

数值 5 6 4 3
结果 5*3+1=16 6/2=3 4/2=2 3*3+1=10
16/2=8 3*3+1=10 2/2=1 10/2=5
8/2=4 10/2=5 5*3+1=16
4/2=2 5*3+1=16 16/2=8
2/2=1 16/2=8 8/2=4
8/2=4 4/2=2
4/2=1 2/2=1
说明 5经过5次变换得到1 6经过7次变换得到1 4经过2次变换得到1 3经过7次变换得到1

1.1.4 PTA提交列表及说明

·格式错误:每一个输出的算式后没有加上回车键,加上‘\n’即可。
·答案错误:while 后的条件写成了‘n==1’,改成‘n!=1’即可。

1.2 题目2 购物(二)

用户购买了若干个商品(商品数不超过10),现在,他告诉你每件商品的价格,你计算出这些商品的平均价格。

1.2.1 数据处理

数据表达:用了双精度浮点型变量a,b,c,整型变量count,count表示商品的数量,a表示输入的一个商品的价格,b用来统商品价格总数,c算每件商品的平均价。
数据处理:表达式:count<10,a==-1, 流程结构:用了else-if语句以及while循环语句。
伪代码:
Begin(算法开始)
输入 a,b,c,count
b ← 0
count ← 0
while count<10
scanf 输入商品价格
if (a==-1)
then [break]
else [b=b+a,count++,c=b/count]
End (算法结束)

1.2.2 实验代码截图

1.2.3 造测试数据

数值 890.78 2769.8 -1 890.78 2769.8 978.2 890.78 2769.8 -1 978.2 55 555 5555 -1 786 546 -1 345
结果 1830.29 1148.62 1830.29 2055.00 666.00
说明 每件商品平均价为1830.29元 每件商品平均价为1148.62元 程序到-1截止,每件商品平均价为1830.29元 每件商品平均价为2055.00元 程序到-1截止,每件商品平均价为666.00元

1.2.4 PTA提交列表及说明

·部分正确:while 后的条件写成了count>=10,写反了,改为‘count<10’即可。
·部分正确:if后的条件写成了‘a=-1’,改成‘a==-1’即可。
·部分正确:‘count++’与‘c=b/count’顺序反了,应该‘count++’在前。

2.代码互评(5分)

同学代码截图

自己代码截图

1.第一份代码在while语句前用了一个输入语句,输入了一个商品的价格,而第二份代码没有。

2.第一份代码算的时候计算了循环次数,用了n来记循环次数,然后,最后输出时直接算总价与总次数的商,从而算出商品的平均价,而第二份代码则是在每一次一个商品的价格输入时就与之前的总价相加,接着就算平均价,最后算出平均价,再输出。

同学代码截图

自己代码截图


1.第一份代码用的是for循环语句,第二份代码则是用的while循环语句。

2.第一份代码将‘Game Over’的分成次数与输入的数是否为负数两种情况来弄,而第二份代码则是用了一个if语句将两种情况放在一起来弄。

3.第一份代码写了两个数相等的情况下break,而第二份代码则是将相等与大于放在一起弄。

3.学习总结(15分)

3.1 学习进度条(5分)

周/日期 这周所花的时间 代码行 学到的知识点简介 目前比较迷惑的问题
第八周 12h 112 在屏幕上输出一些语句或字符组成的图形 无比较迷惑的问题
第九周 12h 286 if-else语句 计算的算式有些运算符号用的不好
第十周 15h 423 for循环语句 一些变量不能够准确地定义,导致弄算式时输出的答案是错的
第十一周 15h 536 调用并自定义函数 自定义函数时搞不清变量类型
第十二周 17h 543 熟悉多分支结构、字符型数据类型和逻辑运算符 分支结构弄不清优先级
第十三周 18h 591 熟悉多分支结构switch语句的使用 switch后的表达式与case常量表达式的关系
第十四周 22h 638 熟悉使用while和do-while结构解决问题 while后的条件常常不明白是限制条件还是允许继续循环条件

3.2 累积代码行和博客字数(5分)

3.3 学习内容总结和感悟(5分)

3.3.1 学习内容总结

3.3.2 学习体会

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

1.这周学习了while和do-while结构,这次在第二题野王认证与第七题单重循环——数鸡蛋上卡了许久,最后还是解决了,开心。
2.真开心,知识接受的很快,又认真听课了,没什么不懂的地方,可能就是while后的那个括号里的条件我有点迷糊,老是搞不清那个条件应该是不能让语句继续循环还是能让语句继续循环。
3.希望老师继续保持这个进度,觉得刚刚好,不快也不慢。
4.代码打了将近七个星期了,还是觉得要天天打,练手感,最初,很容易出现逻辑错误,格式错误,现在基本不出现了,只是不小心时会出现。
5.还是要提前学下新知识,这样接受能力会强些。
6.第一次打伪代码,在百度上查了下伪代码是什么,怎么弄,可能会有不好的地方,继续加油。
posted on 2020-12-04 22:24  BlackR  阅读(136)  评论(12编辑  收藏  举报