C博客作业01——分支、顺序结构

1.本章学习总结

1.1思维导图

1475011-20181006155515644-1417637784.png

本章学习体会及代码量学习体会

1.2.1学习体会

    在暑假的时候就有加入新生学习群,对C语言有一定的基础,所以这周的学习相对轻松,但一些细节方面的知识并不是很了解。在这周的学习中,掌握了C语言程序设计中的一些规范,例如:在标识符的命名中应该采用驼峰命名法,并且对变量的命名要清晰易懂;在使用大括号的时候应该分行……在之前做分支结构的相关习题的时候多用的是if-else和else-if语句,对switch语句的掌握并不是很好,可以说是基本没掌握,在预习完课本及老师的讲解之后,加深了我对switch语句的理解,能够更好的使用。还有许多是我之前自学时没有很好掌握,在上课后有了更深层次了解的知识点,就不一一列举了。老师上课时讲的有一些课本之外的知识点,希望以后上课能学到更多初刻本之外的知识

1.2.2代码累计

1475011-20181006122729239-889036642.png

2.PTA总分

2.1截图PTA中顺序结构、分支结构的排名得分

1475011-20181006121854002-1702814626.png
1475011-20181006121913506-204769658.png

2.2我的总分

顺序结构:100
分支结构:125
总分:225

3.PTA实验作业

3.1PTA题目1

C练习--第一章顺序结构练习
7-8 买U盘: 根据活动经费和U盘单价预估可购买U盘的最大数量

3.1.1算法分析

1.定义活动经费money,U盘单价price、可购数量number;(其中money、price为双精度浮点型变量,number为整型变量)
2.输入money、price的值;
3.计算number的值;
4.输出number的整数部分的值。

3.1.2代码截图

1475011-20181006123341501-1555550991.png

3.1.3测试数据

1475011-20181006124105379-1273316565.png

3.1.4PTA提交列表及说明

1475011-20181006162958002-1111685062.png

 ·Q1:一开始部分测试点没过
 ·A1:用Dev-C++进行调试,发现660.8这个数据在电脑中显示的值为660.799…
 ·Q2:但是那时还不懂浮点型有误差
 ·A2:就反复的对number的数据类型进行修改,发现改变数据类型之前错的测试点过了,但另外的两个测试点又没过
 ·Q3:编译错误的原因
 ·A3:后来直接重写代码,结果重写的过程中将price错写成printf,导致编译错误
 ·Q4:最后怎么做对
 ·A4:后来请教了同学,在money后加上0.001,答案正确,但并不理解,上课时老师提到这题才明白是浮点型误差的问题

3.2PTA题目2

C练习--分支结构
7-6 出租车计价:根据某城市普通出租车收费标准编写程序进行车费计算

3.2.1算法分析

1.定义行驶里程kilometer、等待时间minute、车费fee;(其中kilometer、fee为双精度浮点型变量,minute为整型变量)
2.输入kilometer、minute;
3.如果kilometer<=3,将10赋给fee;
4.如果3<kilometer<=10,则超出3的部分计每公里2元;
5.如果kilometer>10,则超出10公里的部分计每公里3元;
6.计算等待时间应付的车费;
7.将行驶里程所付的车费与等待时间所付的车费相加;
8.输出总车费。

3.2.2代码截图

1475011-20181006141844056-1928574036.png

3.2.3测试数据

1475011-20181006144718995-885841508.png

3.2.4PTA提交列表及说明

1475011-20181006141906320-227181131.png

 ·Q1:刚开始部分正确,但是找不到问题,一个测试点没过,题目又没显示测试点
 ·A1:后来在一步步调试下发现第三个判断输出结果出错,在仔细检查下发现只是计算错误

3.3PTA题目3

C练习--分支结构
7-7 三个数由小到大输出:输入三个整数x,y,z,将这三个数由小到大输出

3.3.1算法分析

·算法一:
               1.定义三个整型变量int1、int2、int3,定义一个整型的暂时储存变量temp;
               2.如果int1>int2,通过temp实现int1与int2两个值的互换;
               3.如果int1>int3,通过temp实现int1与int3两个值的互换;
               4.如果int2>int3,通过temp实现int2与int3两个值的互换;
               5.按照int1、int2、int3的顺序输出,输出的三个数由小到大排列。
·算法二:
               1.定义三个整型变量x、y、z;
               2.如果x<y<z,按x、y、z的顺序输出;
               3.如果x<z<y,按x、z、y的顺序输出;
               4.如果y<x<z,按y、x、z的顺序输出;
               5.如果y<z<x,按y、z、x的顺序输出;
               6.如果z<x<y,按z、x、y的顺序输出;
               7.如果z<y<x,按z、y、x的顺序输出;

3.3.2代码截图

代码一:
1475011-20181006141949747-1842613492.png
代码二:
1475011-20181006142042333-1433754759.png

3.3.3测试数据

1475011-20181006145112178-1136395757.png

3.3.4PTA提交列表及说明

1475011-20181006142102182-85880251.png

 ·Q1:为什么会提交两种方法
 ·A1:最开始最这题的时候,我是用的算法一的做法,但是不知道为什么只是部分正确,就改用成算法二的笨方法
 ·Q2:算法一出错的原因
 ·A2:在课后请教了老师之后,发现只是我的一个标识符打错了。当时因为这种做法并没有掌握的很好,就没有深究错误的原因,没有进行调试,在之后的学习过程中,我应该先自己琢磨,一步步调试,实在判断不出来错误原因的情况下再去请教老师、同学。

4.点评同学博客

评论1

1475011-20181006181152992-1767352915.png

评论2

1475011-20181006181214955-477985724.png

评论3

1475011-20181006181238788-1749184343.png

评论4

1475011-20181006181307176-1798146171.png

评论5

1475011-20181006181327467-421030144.png

转载于:https://www.cnblogs.com/Lay-549/p/9747000.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值