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

 

 

 

1.思维导图及学习体会

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

 

1.2 学习体会

从第一次接触这门《数据结构》课程,个人感觉上它理论性很强,或者是我太少去应用它吧。一个好的程序等于数据结构加算法,可见这门课程的重要性。第一章主要的是要掌握各个概念及掌握各个概念之间的关系,了解什么是抽象数据类型,并会运用它。数据结构有点抽象,学起来有点吃力,里边涉及到的c++知识运用的还不算很熟练。

2.大作业作业内容 

2.1 设计日期的ADT类型

ADT Date{
数据对象:
                 D = {year,month,day | year,month,day属于int类型}
数据关系:
    R = {<year,month>,<month,day>}
数据操作:
void CreateDate(int*&date,int year,int month,int day);
//构造三元数组,构造日期的年月日
int Legal(int *date,ofstream &write);
//判断日期是否合法,合法则写入文件中,不合法则给出提示
void Leapyear(int *date,ofstream &write);
//判断是否为闰年 
void Week(int *date,ofstream &write);
//判断是星期几
void Month(int *date,ofstream &write) ;
//写出对应月份的英文名称
void AddDay(int *date,ofstream &write);
//增加天数,计算增加天数后的日期
void  Compare(int *date,ofstream &write);
//比较与其他日期的逻辑关系
}ADT Date

2.2.数据抽象:头文件

2.3数据封装说明

(1)构造三元组函数

做法:动态申请内存,分别把3个变量放入数组date中。

 

 (2)判断日期是否合法

(3)判断是否为闰年

(4)星期函数

(5)月份的英文名称

(6)添加日期

(7)日期大小比较

(8)主函数

3.结果展示

 

 

4.调试碰到问题

  • c++部分格式运用不熟练,总是输入错误,造成许多格式错误
  • 判断日期大小时运用第一个判断是否合法的函数来做,发现传参存在许多问题,则改为用flag来进行判断
  • 设计函数时参照翁凌涛同学的做法,设计的函数较简单

 

posted @ 2019-03-09 20:49  郭坤  阅读(207)  评论(0编辑  收藏  举报