这个作业属于哪个课程 | C语言程序设计II |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/SE2020-4/homework/11587 |
我在这个课程的目标是 | 熟悉使用while和do-while结构解决问题 |
学号 | 20209194 |
1.PTA实验作业
我的排名:
1.1 题目名1
7-4 猜数字游戏
猜数字游戏是令游戏机随机产生一个100以内的正整数,用户输入一个数对其进行猜测,需要你编写程序自动对其与随机产生的被猜数进行比较,并提示大了(“Too big”),还是小了(“Too small”),相等表示猜到了。如果猜到,则结束程序。程序还要求统计猜的次数,如果1次猜出该数,提示“Bingo!”;如果3次以内猜到该数,则提示“Lucky You!”;如果超过3次但是在N(>3)次以内(包括第N次)猜到该数,则提示“Good Guess!”;如果超过N次都没有猜到,则提示“Game Over”,并结束程序。如果在到达N次之前,用户输入了一个负数,也输出“Game Over”,并结束程序。
输入格式:
输入第一行中给出两个不超过100的正整数,分别是游戏机产生的随机数、以及猜测的最大次数N。最后每行给出一个用户的输入,直到出现负数为止。
输出格式:
在一行中输出每次猜测相应的结果,直到输出猜对的结果或“Game Over”则结束。
1.1.1数据处理
数据表达:用了number,N,Guess,count这些变量,number,N,Guess这些变量的值是由手动输入,类型是整型。
数据处理:if-else语句穿插while语句
if(N >= 3){
while(count <= N+1){
scanf("%d",&Guess);
if(Guess < 0){
printf("Game Over
");
return 0;
}
else if(Guess > number){
printf("Too big
");
count++;
}
else if(Guess < number){
printf("Too small
");
count++;
}
else if(Guess == number&&count == 1){
printf("Bingo!
");
return 0;
}
else if(Guess == number&&count <= 3){
printf("Lucky You!
");
return 0;
}
else if(Guess == number&&count > 3&&count <= N){
printf("Good Guess!
");
return 0;
}
else if(count >= N){
printf("Game Over
");
return 0;
}
}
}
1.1.2实验代码截图
1.1.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
90 4 20 | Too small | 猜的数字小了 |
99 | Too big | 猜的数字大了 |
90 | Lucky You! | 3次以内猜到该数 |
-2 | 游戏已结束 |
1.1.4 PTA提交列表及说明
部分正确:第30条代码掉了count <= N这一句导致答案部分正确、
1.2 题目名2
7-5 找出一批学生的最高分
本题要求编写程序,找出最高分。
输入格式:
输入在一行中给出一系列非负整数,其间以空格分隔。当读到负整数时,表示输入结束,该数字不要处理。
输出格式:
在一行中输出最高分。
1.2.1 数据处理
数据表达:用了number,tallest这些变量,number,tallest这些变量的值是由手动输入,类型是整型。
数据处理:while语句中夹着if语句
while(tallest >= 0){
scanf("%d",&number);
if(number < 0){
break;
}
if(tallest <= number){
tallest = number;
}
}
1.2.2 实验代码截图
1.2.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
88 73 54 20 -1 | 88 | 88是这一行的最高分 |
55 20 88 90 98 -8 | 98 | 98是这一行的最高分 |
100 100 99 95 30 -5 | 100 | 100是这一行的最高分 |
22 50 68 72 0 -3 | 72 | 72是这一行的最高分 |
1.2.4 PTA提交列表及说明
答案错误 :第8行while后面接的条件一直不清楚,试了很多遍答案才正确、
2.代码互评
同学代码截图
自己代码截图
1魏佳鑫同学的代码有一半我看得懂,有一半我看不懂,反正我这水平也难以看懂。不过她用的语句都很巧妙,很棒
2尹国强同学的代码可能有点小的错误
3.我自己的代码也就那样吧,尽力就好
3.学习总结
3.1 学习进度条
周/日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
第三周 | 四天 | 129 | for循环结构 | C语言运用的不熟练,博文编写的时候很多功能不会,而且用的是Markdown,和TinyMCE不同,Markdown有很多东西都没有,对我来说不是那么的方便 |
第四周 | 三天 | 135 | 自定义函数 | 打字还是不太熟练,太慢了,写的代码往往运行成功了自己却不知道啥意思,是咋运行的,只知道拿着书了翻 |
第五周 | 三天 | 111 | 分支结构 | 老是需要翻书问别人,弱爆了,啥时候是个头啊 |
第六周 | 三天 | 122 | switch语句 | 不是特别清楚switch到底啥情况下用,不能够在题目一出现时就知道该用啥语句 |
第七周 | 三天 | 131 | while语句 | 对于while语句后面接的条件还是不太清楚 |
3.2 累积代码行和博客字数
3.3 学习内容总结和感悟
3.3.1 学习内容总结
3.3.2 学习体会
怎么说呢,这周看起来学到了很多,课也自我感觉大概能听懂,但是自己去做的时候就感觉课白听了,完全忘了,脑子懵了已经,没有书我真的是寸步难行,没有了书我只会打得出主函数,真不知道以后咋办。现在打字技术感觉还退步了。这周发生了太多的事了,心情确实不太好,又还感冒了。唉,这日子啥时候是个头啊?