C语言I博客作业07

这个作业属于哪个课程 https://edu.cnblogs.com/campus/zswxy/SE2020-4
这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/SE2020-4/homework/11587
这个作业的目标 <让我们能够熟悉地使用while和do-while结构解决问题。>
学号 <20209223>

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

1.1 循环-古角猜想 (20分)

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

1.1.1数据处理

数据表达:整型int、字符型函数表达scanf()、printf()
数据处理:运用了循环结构中的while语句和双分支结构中的if-else语句来处理该语句;赋值表达式x=x/2、x=x*3+1;

1.1.2实验代码截图

1.1.3 造测试数据

输入数据 输出数据 说明
8 8/2=4、4/2=2、2/2=1 输入的8为偶数,输出数据为该运算过程,得到结果为1
3 33+1=10、10/2=5、53+1=16、16/2=8、8/2=4、4/2=2、2/2=1 输入的3为奇数,输出数据为该运算过程,得到结果为1
10 10/2=5、5*3+1=16、16/2=8、8/2=4、4/2=2、2/2=1 输入的10为偶数,输出数据为该运算过程,得到结果为1
16 16/2=8、8/2=4、4/2=2、2/2=1 输入的16为偶数,输出数据为该运算过程,得到结果为1

1.1.4 PTA提交列表及说明


1、编译错误:一开始程序未编译正确,在Devc++上运行时出现了乱码现象,主要忽略了x不等于1的情况,同时还存在其他的错误。
2、运行超时:我所编译的程序所运行的时间超过了它的时间限制,未在规定时间内运行结束而出错。

1.2 7-6 购物(二)(25分)

用户购买了若干个商品(商品数不超过10),现在,他告诉你每件商品的价格,你计算出这些商品的平均价格。
输入格式:
若干个以空格间隔的实数(每个数不超过100000),以-1作为输入结束的标志。
输出格式:
一个实数,表示商品的平均价格,精确到小数点后两位。
输入样例:
890.78 2769.8 12300 3532.2 -1
输出样例:
4873.19

1.2.1 数据处理

数据表达:整型int、字符型函数表达scanf()、printf(),定义了num、sum、i、Average为浮点型变量
数据处理:运用了循环结构中的while语句,逻辑表达式num !=-1 && i<=10,赋值表达式sum=sum+num; Average=sum/i;

1.2.2 实验代码截图

1.2.3 造测试数据

输入数据 输出数据 说明
43 6.3 4.8 -1 18.03 随机测数,求商品的平均价格
5.7 9.1 6.4 5 -1 6.55 随机测数,求商品的平均价格
3.4 5 8 8.3 -1 6.17 随机测数,求商品的平均价格
9.1 2.1 4.9 5 -1 5.28 随机测数,求商品的平均价格

1.2.4 PTA提交列表及说明


1、编译错误:未将条件状况弄清楚而出错,也在DEV C++上尝试多次,同时编译时还忘记在循环语句中加入终止循环的命令
2、部分正确:在编译过程中,在循环体中出现了部分编译错误,改正后,编译正确

2.代码互评(5分)

同学代码截图


自己代码截图



同学代码与自己代码不同之处:
1、在求循环-古角猜想问题的时候,同学代码定义了变量n,紧接着执行if-else语句;而我定义变量x,紧接着执行循环结构中的while语句和双分支结构中的if-else语句,同学代码后面一部分不太理解
2、在求购物问题的时候,同学使用的是for语句和if-else语句,而我使用的是while语句,看起来更加的简短简洁

3.学习总结(15分)

3.1 学习进度条(5分)

周/日期 这周所花的时间 代码行 学到的知识简介 目前比较迷惑的问题
第三周 三天 130 使用for循环语句实现循环程序的设计 有时程序中表达式写不对而出错
第四周 三天 135 调用和定义函数 对调用函数不是很清楚以及如何去定义函数
第五周 三天 148 分支结构if-else语句、逻辑运算符的运用 有部分函数的功能以及准确的调用自己所定义的函数不太清楚
第六周 两天 150 多分支结构switch语句的使用 优先运算级别常常未注意而导致程序运行出错
第七周 三天 168 while和do-while结构的使用 do-while语句的使用不清楚

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

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

3.3.1 学习内容总结

3.3.2 学习体会

1、在本周的学习过程中,学习了循环结构中用while和do-while结构去解决问题,对于我来说,这两种结构都运用得不是很熟练,特别是do-while结构还不太会熟练运用,还需要花很大的心思与时间在这一方面
2、以后在PTA做题目的时候,争取找一个时间比较长的时候来做,因为一个题目当我们做到一半,过了几个小时在做,就已经思路没有那么清晰了,就得把这个题重新再理过一遍思路,这样不但浪费时间还浪费精力
3、老师课堂讲的非常的细致,让我们都能够把知识点都理解到位,但仍需要我们多去实练,只有在不断练习当中我们才能取得进步

posted @ 2020-12-04 22:34  花开宿语  阅读(147)  评论(8编辑  收藏  举报