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

1.思维导图及学习体会

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

1490929-20190310224646698-991813781.png

1.2 学习体会

上个学期因为本人水平不足,C语言的学习拖延了很多,导致现在的编程逻辑还是很差劲。我希望能尽力去弥补思维上的不足。
现在又从C语言转换成了C++,两者的区别更加多样,想理解需要一定的努力。

2.大作业作业内容

2.1 设计日期的ADT类型

ADT Date{
数据对象:
                 D = {year,month,day | year,month,day属于int类型}
数据关系:
    R = {<year,month>,<month,day>}
数据操作:
     int InitDate( Date &date ,ElemType year,  ElemType month, ElemType day);
    //初始化日期 
void Leap( ElemType year , ofstream &write);
    //判断是否闰年 
int MonthName( Date date, ofstream &write);
    //返回月份的英文名 
int Week(Date date,ofstream &write); 
    //返回这个日期是星期几 
int Add(Date date,ofstream &write);
void Logic(Date date,ofstream &write);
    //比较当前日期与otherDate的逻辑关系 
int Judge(Date date,ofstream &write); 
    //操作结果:判断是否是合法数据 是返回1 否则返回0 
void Destroy(Date &date);
    //销毁Date  
}ADT Date

2.2.数据抽象:头文件

1490929-20190310231245735-1846222085.png

2.3数据封装说明

common.h
1490929-20190310231406735-370276922.png

(1)构造日期数据类型函数,并分别判断情况并返回值

1490929-20190310231509980-1093556046.png

(2)表示日期的格式

1490929-20190310231725265-1872851673.png

(3)判断是否是闰年

1490929-20190310231745671-156282708.png

(4)判断月份,用switch分别表示

1490929-20190310231838319-636005541.png

(5)运用基姆拉尔森计算公式算出是星期几

1490929-20190310232205316-1865269512.png

(6)给出当前的天数并在基础上增加days天

1490929-20190310232339477-1074611284.png

(7)判断日期和其他日期的逻辑关系

1490929-20190310232430130-1339570003.png

3.结果展示

由于主函数有错误 程序未能正常运行

4.调试碰到问题
  • 1.主函数调用还是要用到上个学期的很多知识,有一些困难。
  • 2.C++的逻辑和语法和C来说有些不同,有的地方并不能用普通的逻辑去思考。
  • 3.代码冗长,几乎每一次都无法成功运行,我在自行编写后一直无法正常运行,只能参考同学的作品。

转载于:https://www.cnblogs.com/cosmosss/p/10508072.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值