这个作业属于哪个课程 |
这个作业要求在哪里 |
我在这个课程的目标是 |
这个作业在哪个具体方面帮助我实现目标 |
参考文献 |
C语言程序设计II |
C语言I—2019秋作业06,C语言作业评价标准 |
熟悉并掌握基本的程序语言,拥有独立完成能力 |
进一步强化C语言的基础学习,学习掌握多分支结构、字符型数据类型和逻辑运算符,同时通过PTA作业了解多分支结构、字符型数据类型和逻辑运算符在实际编程语言中的应用 |
|
集美大学林丽老师,百度百科 |
1.PTA实验作业
1.1 计算火车运行时间
本题要求根据火车的出发时间和达到时间,编写程序计算整个旅途所用的时间。输入在一行中给出2个4位正整数,其间以空格分隔,分别表示火车的出发时间和到达时间。每个时间的格式为2位小时数(00-23)和2位分钟数(00-59),假设出发和到达在同一天内。在一行输出该旅途所用的时间,格式为“hh:mm”,其中hh为2位小时数、mm为2位分钟数。
1.1.1 数据处理
①数据表达:使用了整形变量a,b,h,m,c,d,e,f,其中a,b作为输入的两个数,c,d和e,f分别作为第一个和第二个数的小时和分钟数,h,m作为输出结果的小时和分钟数;
②数据处理:使用了if-else选择语句,用于判断分钟是否需要借位。
1.1.2实验代码截图
1.1.3 造测试数据
输入数据 |
输出数据 |
说明 |
0000 0001 |
00:01 |
使用较小数据测试 |
2300 2359 |
00:59 |
使用较大数据测试 |
0414 1105 |
06:51 |
使用较大间隔数据 |
1201 1530 |
06:51 |
使用题试数据测试 |
1259 1301 |
00:02 |
使用需要借位数据 |
1.1.4 PTA提交列表及说明
提交列表说明:
1.编译错误:前两个编译错误都是分号和空格所导致的,没有形成习惯的话打多了代码还是会遗漏;(补齐分号解决)
2.编译错误:使用没有经过定义的变量;(加入定义语句)
3.编译错误:if语句后使用了分号;(删去分号解决)
4.答案错误:这个错误是一整个思路的错误,我用60减去第一个数据的分钟数再加上第二个分钟数,但是会有负数的出现,无法保证计算的严谨性;(改变计算方法)
5.编译错误:在使用新的计算方法后,依旧不可避免的出现分号以及符号问题,这是需要我重视的;(重新审视符号)
6.部分正确:后两个部分正确的错误点都是输出结构的不正确,没有分别应用补0的输出格式,需要在输出语句中加入“02”才能保证补齐到两位数;(改写输出格式)
7.答案正确:在VS中反复验证测试然后更正,粘贴到PTA中成功提交。
1.2 统计学生平均成绩与及格人数
本题要求编写程序,计算学生们的平均成绩,并统计及格(成绩不低于60分)的人数。题目保证输入与输出均在整型范围内。输入在第一行中给出非负整数N,即学生人数。第二行给出N个非负整数,即这N位学生的成绩,其间以空格分隔。输出结果其中平均值精确到小数点后一位。
1.2.1 数据处理
①数据表达:使用了整形变量N,count,i,s,其中N和s作为输入的学生数和学生成绩,i for语句中的中间变量,count表示及格的学生人数;使用了双精度浮点变量grade和average,他们分别作为总分数的平均成绩;
②数据处理:使用了for循环语句,作为输入数据的数量判定,直达达到输入的N个学生数;使用了if 选择语句,用来判断学生的成绩是否及格。
1.2.2实验代码截图
1.2.3 造测试数据
输入数据 |
输出数据 |
说明 |
1,100 |
average = 100.0 count = 1 |
使用单个数据测试 |
5,77 54 92 73 60 |
average = 71.2 count = 4 |
使用题试数据测试 |
8,98 97 98 97 96 95 96 95 |
average = 96.5 count = 8 |
使用较大数据测试 |
3,55 44 33 |
average = 44.0 count = 0 |
使用较小数据测试 |
0 |
average = 0.0 count = 0 |
使用临界值0作为数据测试 |
1,60 |
average = 60.0 count = 1 |
使用临界值60作为数据测试 |
1.2.4 PTA提交列表及说明
提交列表说明:
1.编译错误:for语句中的执行语句没有加分号;(补齐分号解决)
2.部分正确:没有考虑到等于60的情况;(加上等号解决)
3.部分正确:没有考虑到平均数为0,即不输入成绩的情况下的情况;(加入判断语句)
4.答案正确:在VS中反复验证测试然后更正,粘贴到PTA中成功提交。
2.代码互评
2.1同学代码截图①(来自李泽基)
2.1同学代码截图②(来自段誉)
2.2自己代码截图(使用习题7.3)
2.3比较结果
①使用的整形变量的不同,我的使用的比较多,其他两位同学的少一些,我的还有简化的余地。当然名字的不同就不算在内了,每个人的习惯不一;
②使用的计算步骤的不同,分别是先计算好再输出以及再输出时计算;
③使用的计算方法的不同,对于借位的需求一个是大于0一个是小于0,不过都行得通。
3.学习总结
3.1 学习进度条
周数/日期 |
这周所花的时间 |
代码行 |
学到的知识点简介 |
目前比较迷惑的问题 |
第三周/10-11 |
约6-7h |
约200-240 |
“if”和“else”选择结构语句的基本使用 |
对于更多的选择情况产生的时候,无法判断语句执行的先后顺序 |
|
第四周/10-16 |
约6-7h |
约320-360 |
“for”循环结构语句的基本使用 |
对于多个循环结构的使用不熟悉,以及循环计算中的语句计算先后顺序 |
|
第五周/10-24 |
约6-7h |
约320-360 |
自定义函数的格式以及应用 |
|
第六周/10-31 |
约6-7h |
约320-361 |
多分支结构、字符型数据类型和逻辑运算符 |
|
3.2 累积代码行和博客字数
3.3 学习内容总结和感悟
3.3.1 学习内容总结
3.3.2 学习体会
感觉我们的博客作业开始逐渐“步入正轨”,基本上就这个语法格式上来讲已经不是重点了,也不再需要我们投入过多的精力来思考怎样的博人眼球。相应的,我们需要投入更多的时间在提高自己的作业质量上。课程一步步的向前,知识点也一点点增多,我们所掌握的,也应当同步的更多。这周的学习内容是一个扩展,是对于原有的基础的数据类型上的一个字符型扩展,也是对于原有的选择结构的一个多分支结构扩展。并不是很陌生的知识,这对于我们的要求就不仅仅是了解而已了,而是需要我们融会贯通的去掌握。在我们的本次PTA作业中,很明显的感觉到需要我们将之前所学的知识点联系起来应用,而不是单单的一个知识点的考察。所以,这对于我们的的学习也提出了更高的要求,不但要活学,还要活用。
顺带一提,在预览的检查中,发现1.2.3题目中的第二个测试数据,莫名的多出一条下划线,不知道是显示问题还是别的问题,经过多次修改确认跟别的文字没有格式上的区别,但是显示出来的不同,望解答。
学习不能只学,还要用,而且要活用,才能学好学透彻。
——陆游