C语言I博客作业07
这个作业属于哪个课程 | C语言程序设计II |
---|---|
这个作业要求在哪里 | 作业要求的链接 |
我在这个作业的目标 | 熟悉使用while和do-while结构解决问题 |
学号 | 20209188 |
1.PTA实验作业
1.1题目
猜数字游戏
猜数字游戏是令游戏机随机产生一个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”则结束。
输入样例:
58 4
70
50
56
58
60
-2
输出样例:
Too big
Too small
Too small
Good Guess!
1.1.1数据处理
数据表达:整数型:num ,max_cycle_num ,i,if_num。num用于接收被猜想的数字,max_cycle_num用于接收最大猜想次数,i用于记录猜想的次数,if_num用于接收猜想的数据。
数据表达式:赋值表达式,关系表达式,逻辑表达式。
流程结构:循环结构,判断结构。
1.1.2实验代码截图
1.1.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
58 4 58 |
Bingo! | 测试成 |
58 4 45 58 |
Too small Lucky You! |
测试成功 |
53 2 34 56 87 |
Too small Too big Game Over |
测试成功 |
1.1.4 PTA提交列表及说明
答案错误:题目要求在输出猜对的结果或“Game Over”则结束,而我刚开始时没用看明白,所以在猜对时没有结束语句,程序还可以继续输入数据。
1.2题目
7-6 购物(二) (25分)
用户购买了若干个商品(商品数不超过10),现在,他告诉你每件商品的价格,你计算出这些商品的平均价格。
输入格式:
若干个以空格间隔的实数(每个数不超过100000),以-1作为输入结束的标志。
输出格式:
一个实数,表示商品的平均价格,精确到小数点后两位。
输入样例:
890.78 2769.8 12300 3532.2 -1
输出样例:
4873.19
1.2.1 数据处理
数据表达:整数型:i。用于进行购物数量的累加计算。
浮点型:num,sum。num用于承载输入的物品价格,sum用于计算所有物品的总价。
数据处理:
数据表达式:赋值表达式,关系表达式,逻辑表达式。
流程结构:循环结构,判断结构。
1.2.2 实验代码截图
1.2.3 造测试数据
输入数据 | 输出数据 |
---|---|
890.78 2769.8 12300 3532.2 -1 | 4873.19 |
0 -1 | 0.00 |
1.2.4 PTA提交列表及说明
部分错误: 一开始题目给我错误提示是商品 数为极端值 ,我以为是输入的数据过大导致数据流失,改成long类型后就只有 商品数为极端值 的测试点对了,想了很久,看了别人代码才发现当他没有物品价格为0时要输出0.00。
-
2.代码互评
-
同学代码截图
自己代码截图
总结
- 同学的代码把可以KO无限个室友和可以KO多少个室友的判断放在一个while循环里进行,而我在当他不能一击秒杀他人时再在循环里判断他可以KO多少个室友。
- 同学的输入数据全放在一个scanf里面并且没有空格分开,一开始以为不可以,但我自己试了一遍发现对于读入的数据没有影响。
3.学习总结
3.1 学习进度条
周/日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 |
---|---|---|---|
第8周/10.19~10.25 | 12 h | 280 | 预习了一下课本,了解代码的样子,并学习了基本代码 |
第9周/10.26~11.1 | 15 h | 580 | 了解了基本的常量与变量,与数据类型 |
第10周/11.2~11.8 | 20 h | 930 | if语句与for循环语句的运用 |
第11周/11.9~11.15 | 23 h | 1420 | 函数的定义 |
第12周/11.16~11.22 | 24 h | 1360 | if 语句的嵌套 |
第13周/11.23~11.29 | 34 h | 1570 | switch的使用 |
第14周/11.30~12.6 | 34 h | 1460 | 结构体 |
3.2 累积代码行和博客字数
3.3 学习内容总结和感悟
3.3.1 学习内容总结
3.3.2 学习体会
1.本周的学习集中在对于结构体的学习,对于结构体有了粗略的了解,但在做题目时还没有意识的使用
2.感觉自己基础知识不牢靠,有一些实用的小技巧不知道,这导致我的代码相较于其他人的代码会复杂许多
3.做题目太少,且做过的题目不可以马上的做出了,这是自己对于已经做过的题目没有去深刻的去解剖