其他分享
首页 > 其他分享> > DS博客作业01--日期抽象数据类型设计与实现

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

作者:互联网

1.思维导图及学习体会

1.1第一章绪论知识点思维导图

1.2 学习体会

2.大作业作业内容

2.1 设计日期的ADT类型

ADT Date{
数据对象:
    D = {year,month,day | year,month,day属于int类型}
数据关系:
    R = {<year,month>,<month,day>}
数据操作:
    Status InitDate(DATE &date,ElemType year,ElemType mouth,ElemType day);
       //操作结果:构造日期的结构,year,month,day分别代表年月日。 
    Status JudgeDate(DATE date,ofstream &writeFile);
       //操作结果:判断输入的数据是否合法。 
    Status leapYear(DATE date);
       //操作结果:判断是否为闰年。 
    Status WitchWeek(DATE date,ofstream &writeFile); 
       //操作结果:判断输入的日期为星期几。 
    Status MonthName(DATE date,ofstream &writeFile);
       //操作结果:输出输入的月份的英文名。 
    Status DaysAdd(DATE date,ofstream &writeFile);
       //操作结果:计算当前日期增加天数后的日期。 
    Status CompareDate(DATE date,ofstream &writeFile);
       //操作结果:对日期进行比较。 
}ADT Date

2.2.数据抽象:头文件

2.3数据封装说明

(1)构造三元组函数

做法:动态申请内存,把年月日存入数组date中

(2)判断数据是否是合法数据函数

做法:对传进的参数进行判断。数据合法返回TRUE,否则返回FALSE

(3)判断是否是闰年函数

做法:对传进的参数进行判断。数据是闰年返回TRUE,否则返回FALSE

(4)判断星期几函数

做法:运用公式找出星期几

(5)输出月份英文名函数

做法:运用下标找出月份并输出

(6)返回当前日期增加days天的日期函数

做法:一步步加日期,到达对应天数后月数加一,到达对应月数后,年数加一

(7)比较日期间的逻辑关系函数

做法:先进行年的比较,如果年大之后的就不用比了,再比较月份,如果相同就比较天数

3.结果展示



4.调试碰到问题

标签:Status,01,writeFile,DATE,日期,抽象数据类型,date,ofstream,DS
来源: https://www.cnblogs.com/wcrbailun/p/10503182.html