C语言I博客作业07
这个作业属于哪个课程 | C语言程序设计II |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2020-2/homework/11589 |
这个作业的目标 | 能更好的学习C语言,以及学习相关专业知识 |
学号 | 20208986 |
1.PTA实验作业(20分/题)
1.1 猜数字游戏
题目描述:
猜数字游戏是令游戏机随机产生一个100以内的正整数,用户输入一个数对其进行猜测,需要你编写程序自动对其与随机产生的被猜数进行比较,并提示大了(“Too big”),还是小了(“Too small”),相等表示猜到了。如果猜到,则结束程序。程序还要求统计猜的次数,如果1次猜出该数,提示“Bingo!”;如果3次以内猜到该数,则提示“Lucky You!”;如果超过3次但是在N(>3)次以内(包括第N次)猜到该数,则提示“Good Guess!”;如果超过N次都没有猜到,则提示“Game Over”,并结束程序。如果在到达N次之前,用户输入了一个负数,也输出“Game Over”,并结束程序。
1.1.1数据处理
数据表达:定义了整型变量m,y,count=0,N,i;其中m,N是通过用户输入得到。
数据处理:运用了if-else分支结构和for循环结构。表达式:for(i=1;i<=100;i++);if(y<0);if(y>m&&count<=N);if(y<m&&count<=N);if(count==1);if(count<=3&&count>1);if(count<=N&&count>3);if(count>N)。
伪代码:
程序开始
读入两个数 m N
进入for循环
if 读入数是负数 则输出Game Over
if y>m&&count<=N 则输出Too big
if y<m&&count<=N 则输出Too small
if 读入数第一次就与计算机随机数相等 则输出Bingo!
if 条件满足count<=3&&count>1 则输出Lucky You!
if 条件满足count<=N&&count>3 则输出Good Guess!
if 在指定N内未相等 则Game Over
1.1.2实验代码截图
1.1.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
16 3 16 32 31 33 | Bingo! | 第一次就猜对 |
56 3 23 78 56 36 | Too small Too big Luckey you! | 不超次数猜对 |
42 3 23 96 56 31 | Too small Too big Too big Game over | 超次数未猜对 |
66 3 12 32 59 66 | Too small Too small Too small Good Guess! | 超次数猜对 |
1.1.4 PTA提交列表及说明
提交列表说明:
部分正确:if(count==1) 写成了if(count=1)。
部分正确:未考虑当输入值为负时的直接退出。
编译错误:有一个printf后面未加分号。
1.2 购物(二)
题目描述:
用户购买了若干个商品(商品数不超过10),现在,他告诉你每件商品的价格,你计算出这些商品的平均价格。
1.2.1 数据处理
数据表达:定义了浮点型变量price,num,avg,sum;其中price为用户输入,sum求总价格,avg为平均价格,num为商品个数。
数据处理:运用while循环结构与if-else分支结构。表达式:while(price!=-1);sum+=price;num++;if(num==0);num=1;avg=0;avg=sum/num。
伪代码:
程序开始
读入price,num,avg,sum
用户输入price,price!=-1进入while循环
sum+=price;num++;再次输入price
if num=0为极端值,num=1,avg=0
avg=sum/num,输出avg
1.2.2 实验代码截图
1.2.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
13 14 15 16 | 14.50 | 四件商品 |
-1 | 0.00 | 没有商品 |
1.2.4 PTA提交列表及说明
提交列表说明:
部分正确:未考虑商品值为极端值时的输出。
2.代码互评(5分)
同学代码截图1
自己代码截图1
1.他用的是while语句而我用的是for语句。
2.我们定义的变量多少不同。
3.代码格式不同。
同学代码截图2
自己代码截图2
1.定义的变量不同。
2.我用了求平均数的表达式,而他没有用。
3.我们while循环时的条件不同。
3.学习总结(15分)
3.1 学习进度条(5分)
周/日期 | 所花时间 | 代码行数 | 所学知识点 | 目前迷惑点 |
---|---|---|---|---|
1/10.19-10.25 | 10h | 232 | 数学函数的的调用 | 有些调用函数不认识 |
2/10.26-11.1 | 10h | 269 | if-else语句 | 无 |
3/11.2-11.7 | 10h | 337 | for语句 | 无 |
4/11.8-11.13 | 12h | 370 | 自定义函数 | 函数的声明 |
5/11.14-11.20 | 15h | 430 | 分支结构的深入 | 无 |
6/11.21-11.27 | 16h | 440 | switch语句 | 无 |
7/11.28-12.4 | 15h | 450 | while和do while语句 | while语句用的还不是很熟练 |
3.2 累积代码行和博客字数(5分)
3.3 学习内容总结和感悟(5分)
3.3.1 学习内容总结
3.3.2 学习体会
1.不要只停留在老师所讲的东西,一定要自己去拓展知识,把老师所讲的知识自己弄得更加深入。
2.不能单单只刷题,更多是要去归纳总结,并且围绕不知道的知识点去学习。
3.经过一定时间的努力,我们学到的东西越来越多,花费的时间也越来越长,后面将要学习的东西越来越难,我们一定要适应这种趋势,并调节自己的心态和压力。
4.在遇到不知道的知识点的时候,要查阅相关资料或者请教优秀的人。
5.时刻做好笔记,做好盲点,不懂的名词积极百度,实时记录下来。