DS博客作业01--日期抽象数据类型设计与实现
1.思维导图及学习体会(2分)
1.1第一章绪论知识点思维导图
1.2学习体会
新学期,新气象,但我还是很怕打代码,毕竟经历了上个学期,所以我在开学的前几天看了一点书,虽然只是略懂。经过这周上课之后,我反省了一下,为什么其他同学会,我不会?原来是因为他们在课后付出了很多,其实老师上课的时候不是每个知识点都说,而是需要自己下来多看看书,动动手!
特别是做了这个大作业后,我学到了一些C++的语法,什么是抽象数据类型,还有用C++对文件进行读取和写入,百度了用基姆拉尔森计算公式来算日期对应的星期几。
2.大作业作业内容(6分)
2.1设计日期的ADT类型(1分)
2.2数据抽象:头文件
截图展示你的头文件。头文件代码务必加入注释。
2.3数据封装说明
截图展示每个运算操作代码。并文字简要介绍功能。如
(1)构造三元组函数
做法:动态申请内存,分别把3个变量放入数组T中。
(2) 判断是否是闰年函数
做法:传抽象数据结构类型名进去,用公式对年进行计算即可判断。
(3) 输出日期对应星期几
做法:用基姆拉尔森计算公式计算,定义一个week表示星期几,若week=0,则星期一,如此类推。
(4) 返回日期月份的英文名
做法:传抽象数据结构类型名进去,可知道当前日期的月份,用一个switch语句,输出相应月数的英文名。
(5) 返回增加days后的日期
做法:再定义三个变量来存放加days天后的日期,然后分三种情况,月份有31天,30天,和二月份的天数,根据年月日的关系计算。
(6) 比较当前日期与otherDate的逻辑关系
做法: 调用InitDate函数构建otherDate三元组,并对year1,month1,day1进行赋值。然后依次比较它们的年,月,日的大小关系
3.结果展示(1分)
截图展示你的输入数据及输出结果。截图中可以简要文字描述每种功能。
4.调试碰到问题(1分)
描述你调试中碰到的问题及解决方法。
- (1):在输入的后面加endl (经室友提醒)
- (2):文件名不经传输就用到其它函数(看同学代码怎么传参文件名)
- (3):多一次构建三元组 (同学在讲代码时,老师给出的建议)