DS博客作业01--日期抽象数据类型设计与实现

1.本章学习总结

1.1思维导图

1.2本章学习体会

通过两周的学习,发现数据结构的内容更加抽象而且很难理解,尤其对于我们基础有点差的同学,感觉学起来很吃力,讲课的进度也有点快,好比课本第二章的内容共40页,预习要全部弄懂基本不可能的时间耗费太多而且很抽象,但是通过每一次的学习都会得到新的体会以及对知识的理解也会更加深刻,我觉得当前主要的就是跟着老师的方法进行学习,多刷题,还有希望老师能多给一些代码的样例然后我可以模仿。

2.大作业

2.1设计日期的ADT类型

ADT Date{
数据对象:
D = {year,month,day | year,month,day属于int类型}
数据关系:
R = {<year,month>,<month,day>}
数据操作:
Status InitDate(DATE &Time,Status year,Status month,Status day,ofstream &outFile);
//操作结果:构造了三元组Time并进行初始化
Status GetWeek(DATE &Time,ofstream &outFile);
//操作结果:获取当前星期并输出
Status ReturnMonth(DATE &Time,ofstream &outFile);
//操作结果:获取当前月份并转为英文输出
Status JudgeLeapyear(DATE &Time,ofstream &outFile);
//判断是否为闰年并输出结果
Status JudgeDate(DATE &Time,ofstream &outFile);
//判断日期的逻辑关系
Status DestoryDate(DATE &Time);
//释放空间
tatus Legal(DATE &Time,Status flag);
//日期的合法判断

2.2头文件说明

2.3数据封装说明

初始化函数


说明:对日期三元组进行初始化并进行格式化输出。

月份返回函数


说明:查找月份并返回英文。

获取星期函数


说明:通过公式计算当前日期的星期并返回。

判断闰年函数


说明:通过条件返回是否为闰年。

日期逻辑判断函数


说明:用if-else语句逐层判断逻辑关系并输出。

日期合法性判断函数


说明:通过逐层判断日期数据是否合法,二月数据通过是否为闰年判断

销毁函数


说明:关闭文件

3.结果展示



4.调试碰到问题

1.基本c++语法不懂通过参考同学以及百度解决

2.对于涉及二月份天数问题不知道怎么操作以致增添固定天数后日期函数未实现(待解决)

3.不知道怎么操作两个文件(未解决)

原文地址:https://www.cnblogs.com/ljw999/p/10484348.html