C博客作业01--分支、顺序结构
1.1思维导图
总结本周的学习内容,如下图所示:
![1476233-20181008172539792-965491415.png](https://img2018.cnblogs.com/blog/1476233/201810/1476233-20181008172539792-965491415.png)
1.2 本章学习体会及代码量学习体会
1.2.1 学习体会
因为之前自己提前看过翁恺老师的视频,这周所学的比较轻松。但在课堂上,仍然收获了很多小小的细节,比如驼峰命名法;if-else语句的格式;取两位小数时会不会四舍五入等。这些能让我写的代码更容易被其他人读懂,也开阔了自己的思维,慢慢学会多去问一些为什么,多去试试其他的可能性。
还有,可能因为有一段时间(接近半个月)没敲代码,所以一些比如scanf里面的&经常被忘记,以后要多多敲代码啊。1.2.2 代码累计
2.PTA总分
2.1截图展示
![1476233-20181008172912636-1705970296.png](https://img2018.cnblogs.com/blog/1476233/201810/1476233-20181008172912636-1705970296.png)
2.2 我的总分:
PTA总分:225分
PTA实验作业
3.1 PTA题目1
请编写程序,根据活动经费和U盘单价预估可购买U盘的最大数量。
3.1.1 算法分析
- 1.需要的变量:经费money、U盘单价price、U盘数量number;- 2.用double定义经费money和U盘单价price,用int定义U盘数量number;- 3.输入经费和U盘单价。- 4.代入表达式:number=money/price+0.0000001。(注意double的精度缺陷)- 输出最大U盘数量。
3.1.2 代码截图
3.1.3 测试数据
3.1.4 PTA提交列表及说明
- Q1:为什么只是部分正确,我感觉我写的很对???
A1:double本身精度存在缺陷,需要手动补偿。(当时刚提交一次之后就和舍友谈论,试了好几个点之后还是错。然后第二天看到有人满分了,就屁颠屁颠地去求助大佬啦)
3.2 PTA题目2
题目简介:
本题要求根据某城市普通出租车收费标准编写程序进行车费计算。具体标准如下:起步里程为3公里,起步费10元;超起步里程后10公里内,每公里2元;超过10公里以上的部分加收50%的回空补贴费,即每公里3元;营运过程中,因路阻及乘客要求临时停车的,按每5分钟2元计收(不足5分钟则不收费)。
3.2.1 算法分析
- 1.定义路程和等待时间。- 2.输入路程和等待时间- 3.若路程<=3公里,车费=10+等待时间/5*2;- 4.若3公里 <路程> <=10公里,车费=10+2*(路程-3)+等待时间/5*2;;- 5.若路程>10公里,车费=10+2*(路程-3)+2*0.5*(路程-10)+等待时间/5*2;;- 6.输出车费。 路程>
3.2.2 代码截图
3.2.3 测试数据
3.2.4 PTA提交列表及说明
- Q1:对于题目说的时间问题,刚开始是想先用if语句判断时间是否为0,后来发现根本不行。。头大。
- A1:后来看到闲着无聊就去看了一下自己之前写的的笔记,看到整数除以整数,结果只取整数,就想到了。
- Q2:对题目不理解。
Q2:先不敲代码,在纸上先解出这个数学题,写成分段函数,就好啦。
3.3 PTA题目3
题目简介
本题要求编写程序计算某年某月某日是该年中的第几天。
3.3.1 算法分析
- 1.定义年、月、日;- 2.输入年、月、日;- 3.首先判断年是否为闰年,即该年年份能被4整除且不能被100整除、或者能被400整除。- 4.若为闰年: - 若月为一月,则天数=日; - 若月为二月,则天数=日+31; - 若月为一月,则天数=日+31+29; - 若月为一月,则天数=日+31*2+29; - 若月为一月,则天数=日+31*2+29+30; - 若月为一月,则天数=日+31*3+29+30; - 若月为一月,则天数=日+31*3+29+30*2; - 若月为一月,则天数=日+31*4+29+30*2; - 若月为一月,则天数=日+31*5+29+30*2; - 若月为一月,则天数=日+31*5+29+30*3; - 若月为一月,则天数=日+31*6+29+30*3; - 若月为一月,则天数=日+31*6+29+30*4;- 5.若不为闰年: - 若月为一月,则天数=日; - 若月为二月,则天数=日+31; - 若月为一月,则天数=日+31+28; - 若月为一月,则天数=日+31*2+28; - 若月为一月,则天数=日+31*2+28+30; - 若月为一月,则天数=日+31*3+28+30; - 若月为一月,则天数=日+31*3+28+30*2; - 若月为一月,则天数=日+31*4+28+30*2; - 若月为一月,则天数=日+31*5+28+30*2; - 若月为一月,则天数=日+31*5+28+30*3; - 若月为一月,则天数=日+31*6+28+30*3; - 若月为一月,则天数=日+31*6+28+30*4;- 6.输出天数.
3.3.2 代码截图
![1476233-20181010173136154-700773198.png](https://img2018.cnblogs.com/blog/1476233/201810/1476233-20181010173136154-700773198.png)
![1476233-20181010173201502-272146491.png](https://img2018.cnblogs.com/blog/1476233/201810/1476233-20181010173201502-272146491.png)
3.3.3 测试数据
3.2.4 PTA提交列表及说明
![1476233-20181010175719943-1276642236.jpg](https://img2018.cnblogs.com/blog/1476233/201810/1476233-20181010175719943-1276642236.jpg)
![1476233-20181010181523326-1657065136.png](https://img2018.cnblogs.com/blog/1476233/201810/1476233-20181010181523326-1657065136.png)