C语言I博客作业06
一、本周教学内容&目标
第3章 分支结构 3.1-3.2 使学生熟悉多分支结构、字符型数据类型和逻辑运算符。
二、本周作业头
题目 | 答案 |
---|---|
这个作业属于那个课程 | C语言程序设计II |
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2019-2/homework/9886 |
我在这个课程的目标是 | 理解数组的定并能灵活用法,位宽的用法 |
这个作业在那个具体方面帮助我实现目标 | 使用for循环语句实现指定次数的循环程序设计。 |
参考文献 | 百度,《C语言程序设计I》 |
三、本周作业
- 1.PTA实验作业
- 2.代码互评
- 3.学习总结
四、作业格式
1.PTA实验作业(20分/题)
从PTA题目集中选出2个你最满意的题目完成以下内容,选择题目难度越大,分值越高,每题20分(每项5分),内容要求如下
1.1 输出闰年
题目内容描述:
1.1.1数据处理
数据表达:使用了三个整型变量i、c、y,其中y是用来21世纪的某个截止年份,i表示这期间的年份,c是这时间段闰年的数量
数据处理:作用了if-else和for的结构,当第一次if成立是输出“Invalid year!”。否则进行for循环,for结束后再进行if判断,如果成立输出None。
1.1.2实验代码截图
1.1.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
1245 | Invalid year!Invalid year! | 21世纪以前 |
2004 | 2004 | 21世纪 |
2345 | Invalid year! | 21世纪后 |
1.1.4 PTA提交列表及说明
- 编译错误:12行if条件后面是两个语句都是在if条件成立下执行,但是我没有加分号。后来经过同学指导才知道这样是错误的。
- 部分正确:if条件里面的==打成了=,进行了赋值运算。
- 部分正确:没搞清楚21世纪是哪个时间段。
1.2 奇偶分家
题目内容描述:
1.2.1 数据处理
数据表达:定义4个整型变量n、j、e、i,还有一个整型数组a[1000],其中n是输入整数的数量,i用看进行循环输入数据的次数,j是奇数数量,e是偶数数量,a[1000]是用来储存输入的数据。
数据处理:先让j和e赋值为0,运用了for循环语句,输入数字,并判断数字类型,如果奇数,则j++,是偶数就e++,最后输出奇数和偶数的数量。
1.2.2 实验代码截图
1.2.3 造测试数据
输入数据 | 输出数据 | 说明 |
---|---|---|
5 23 45 69 78 47 | 4 1 | 随机5个两位数 |
4 12 789 631 -8 | 2 2 | 4个随机数 |
4 0 23 -78 -4 | 1 3 | 含0 |
1.2.4 PTA提交列表及说明
- 部分正确:if条件里面的“==”打成“=”。
2.代码互评
找2份同学代码,和自己代码比较,建议互评代码尽量找代码风格差异较大。
1.对比1
2.1.1同学代码截图:
2.1.2自己代码截图:
区别:我直接把for嵌套在if语句中,而他直接从上往下执行,不使用else,而且判断闰年的方法,我感觉他的方法是错误的,它的i%4==0&&i%400!=0不能够证明某个年份是闰年,因为某个年份能被400整除也是闰年。但是在21世纪是一种特殊情况,所以他的答案也没错。
2.对比2
2.2同学代码截图:
2.2自己代码截图:
区别:
说实话,我看到这个题目第一想到的就是数组,当我看到这个代码时,我才知道原来还可以用for循环,而且比我的代码更好,因为我的输入的数据有限,但是他的代码比我的很实用。
3.学习总结(15分)
3.1 学习进度条(5分)
周 /日期 | 这周所花的时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的问题 |
---|---|---|---|---|
第一周 | 3小时 | 60 | 学会输出字符 | 无 |
第二周 | 10小时 | 186 | 学到变量名称、运算、把变量的结果输出 | 无 |
第三周 | 7.5小时 | 245 | 学会if条件判断 | 无 |
第四周 | 5小时 | 120 | 学会使用for循环 | 无 |
第五周 | 6小时 | 80 | 学会定义函数,do while 等循环 | 一些复杂的函数看到不知道怎么定义,不了解一些新定义,比如const |
第六周 | 7小时 | 140 | 数组的定义,break的用法 | 对于一些题目不知道到底用什么方法去解决 |
3.2 累积代码行和博客字数(5分)
时间 | 博客字数 | 代码行数 |
---|---|---|
第一周 | 183 | 60 |
第二周 | 1774 | 186 |
第三周 | 2149 | 245 |
第四周 | 1585 | 120 |
第五周 | 1645 | 80 |
第六周 | 2139 | 140 |
3.3 学习内容总结和感悟(5分)
3.3.1 学习内容总结
请用思维导图的形式将到目前为止所学的内容进行整理。
3.3.2 学习体会
本周的作业让我学到了很多东西,比如一些if和for语句的嵌套使用,还有数组的使用,逻辑运算符和关系运算符的使用,这周的作业做起来,必须要提前预习书本上的内容,但是编程题我们不知道这个题是否要用到新的知识,所以有些题做起来比较困难。但是慢慢地问别人,会发现这些题目都很有意思。说实话,再做那个《输出闰年》的时候一直答案错误,一直小错误也没找出来,后来问了别人才知道21世纪原来是2001-2100年,但是我之前一直以为是2000-2099年,所以在这个题目绕了很久。再做c语言题目是文化知识也是比较重要的。有时候读懂了题目,但是不会做,所以数学基础也要有,我觉得c语言是一个综合的科目。我们再做c语言还要保证能够理解并解决这个问题。
五、评价标准
C语言作业评价标准
本次作业特别注意:
- 1.提交列表没内容,或者太简单,每题得分0分。注意选择提交列表长的题目介绍。
- 2.代码格式不规范,0分。
- 3.代码互评,内容简单,0分。
- 4.学习内容总结无思维导图,0分。
- 5.完成挑战题的同学,加20分。