C语言I作业07
| 问题 | 回答 |
|---|---|
| 这个作业属于那个课程 | C语言程序设计II |
| 这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/SE2019-2/homework/9930 |
| 我在这个课程的目标是 | 掌握编程的基本步骤 |
| 这个作业在那个具体方面帮助我实现目标 | 写伪代码,编程 |
| 参考文献 | 百度资料 |
1.PTA实验作业

1.1 题目名1
计算天数 (15 分)
本题要求编写程序计算某年某月某日是该年中的第几天。
输入格式:
输入在一行中按照格式“yyyy/mm/dd”(即“年/月/日”)给出日期。注意:闰年的判别条件是该年年份能被4整除但不能被100整除、或者能被400整除。闰年的2月有29天。
1.1.1数据处理
数据表达:用了哪些变量,这些变量的值是怎么来的,类型是什么。
数据处理:数据用到的表达式和流程结构。
数据表达:用了year month day dayth 由int定义来的 都为整点型
数据处理:year%4 == 0 && year%100 !=0 || year%400 ==0 month = month - 1;if-else switch结构
伪代码
include<stdio.h>
int main()
用int定义变量
用if-else判断二月天数
用switch计算天数
最后把天数相加再输出
reture 0;
1.1.2实验代码截图

1.1.3 造测试数据
| 输入 | 输出 | 说明 |
|---|---|---|
| 2004/02/21 | 52 | 无 |
| 2015/03/01 | 60 | 2015年为平年 |
| 2016/03/01 | 61 | 2016年为闰年 |
1.1.4 PTA提交列表及说明

1格式错误:多输入了"Input year month day"结不需要果
1格式错误:最后输出天数那里在%d前多打了一个空格
都删除尽快
1.2 题目2
7-12 统计学生成绩 (15 分)
本题要求编写程序读入N个学生的百分制成绩,统计五分制成绩的分布。百分制成绩到五分制成绩的转换规则:
大于等于90分为A;
小于90且大于等于80为B;
小于80且大于等于70为C;
小于70且大于等于60为D;
小于60为E。
1.2.1 数据处理
数据表达:用了哪些变量,这些变量的值是怎么来的,类型是什么。
数据处理:数据用到的表达式和流程结构。
数据表达:a b c d e N 由int定义来的 都为整点型
数据处理:i = 1; i <= N; i++ grade/10 switch-case结构。
伪代码:
include <stdio.h>
int main (void)
用int定义八个变量
用for语句写循环体
用switch- case执行出结果
最后输出总和
return 0;
1.2.2 实验代码截图

1.2.3 造测试数据
| 输入 | 输出 | 说明 |
|---|---|---|
| 90 91 92 93 94 95 96 | 7 0 0 0 0 | 全为A |
| 81 82 89 83 84 85 86 | 0 7 0 0 0 | 全为B |
| 10 20 30 40 50 58 59 | 0 0 0 0 7 | 全为E |
1.2.4 PTA提交列表及说明


1格式错误:其中有应该","打成了"."
2编译错误:a = b = c = d = e = 0;中少写了一个d 而且switch打成了swich。
2.代码互评
同学1:

自己:

对比:相比而言我觉得自己的简单多了,他的好复杂。它的每个case都单独求出跳出所以每个月都要总和以前的天数。然后他是把平年和闰年分为两种情况分别讨论分别计算出来。我是不跳出的,直接全部计算。每个月分分别累加。符合的月份就会累加,然后执行。最后算出结果总和。然后对于平年和闰年,我就只讨论了二月。
相同点:都用了if else语句。还有switch语句。
同学2:

自己:

对比:这两份代码其实大同小异。开始都是第一个个变量。执行过程也基本相同。
不同的仅有变量的名称不一样。都是用for语句作为循环语句。然后用switch语句作为判断。
3.学习总结(15分)
3.1 学习进度条(5分
| 日期 | 这周所花时间 | 代码行 | 学到的知识点简介 | 目前比较迷惑的地方 |
|---|---|---|---|---|
| 9/16~9/22 | 两天 | 30 | 在屏幕上显示hello Word! | 编程操作 |
| 9/23~9/30 | 两天半 | 100 | 求华氏温度对应的摄氏温度 | 运算符不理解 |
| 10/7~10/12 | 四天 | 240 | 计算分段函数 | 不理解为什么要那样打,有些东西代表的含义 |
| 10/14~10/18 | 8个小时 | 310 | 使用for循环语句实现指定次数的循环程序设计 | 还是有很多代码,不知道什么意思,为什么要这么打? |
| 10/23~10/26 | 10小时 | 420 | 生成乘方表和阶乘表,对函数的定义和调用有初步的认识,能模仿编程 | 部分运算符的运算顺序。 |
| 10/28~11/02 | 八个小时 | 640 | 熟悉分支结构,字符型数据类型和逻辑运算符 | 分支结构的类型。运算逻辑符的运算顺序 |
| 11/5~11/8 | 6个小时 | 740 | 写伪代码 使用switch语句 | 部分使用条件 |
3.2 累积代码行和博客字数(5分)

3.3 学习内容总结和感悟(5分)
3.3.1学习内容总结

3.3.2 学习体会
抄程序是最笨的方法,但我认为他是进步最快的方法,抄成趋势积累经验的时候。当你真正需要做某个程序的时候,你可以把你这些经验付诸实际。做我们这一行的必须精准。因为一个关键语句和一个关键符号就可能导致你的整个程序出错或者混乱。希望我能一直持之以恒的做下去吧。也必须这样做。阳光总在风雨后。相信自己一定能行。

浙公网安备 33010602011771号