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

1.思维导图及学习体会(2分)

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

1474715-20190310114053516-1003036886.png

1.2 学习体会

这两周的学习,初步接触了数据结构,突然转为C++的语法确实有些不太习惯,有些语法上的问题需要百度,但是和C相比,C++的语法真的方便好多
然后刚看到大作业内容的时候觉得有点难,心想这种问题是我这种水平能写出来的吗,所以迟迟不敢开始写。后来看了班上其他同学的博客,慢慢摸索和模仿也就逐渐写出来了,所以认识到学编程还是要多练习以及阅读别人的代码,这样进步的比较快。

2.大作业作业内容 (6分)

2.1 设计日期的ADT类型(1分)

ADT Date{
数据对象:
    D = {year,month,day | year,month,day属于int类型}
数据关系:
    R = {<year,month>,<month,day>}
数据操作:
    Status InitDate(Date &date,int year,int month,int day);
    //初始化日期
    //操作结果,构造了year,month,day的日期
    Status IsLegal(Date date);
    //初始条件:date存在
    //操作结果:判断年月日是否合法,合法返回true,不合法返回false
    Status Leap(Date date);
    //初始条件:date存在
    //操作结果:是闰年返回true,不是返回false
    string Week(Date date);
    //初始条件:date存在
    //操作结果:判断周几,如星期一,星期二等
    string EnglishMonth(Date date);
    //初始条件:date存在
    //操作结果:返回月份的英文名
    Date AddDays(Date date,int days); 
    //初始条件:date存在
    //操作结果:返回day加上days后的值
    char Relation(Date date,Date otherdate);
    //初始条件:date与otherdate都存在
    //操作结果:比较二者的关系

2.2.数据抽象:头文件

1474715-20190310123315659-982367695.png

2.3数据封装说明

(1)构造三元组函数

1474715-20190310123353341-926422748.png

(2)判断日期合法性

1474715-20190310123527636-12483131.png

(3)判断是否闰年

1474715-20190310123611187-869060904.png

(4)输出星期几

1474715-20190310123658375-616160359.png

(5)输出月份英文名

1474715-20190310123737167-1172488167.png

(6)输出加入一定天数后的日期

1474715-20190310123823034-335470789.png

(7)输出与另一个日期比较的关系

1474715-20190310123932896-300493729.png

(8)主函数

1474715-20190310124035856-156309592.png

3.结果展示(1分)

1474715-20190310130225858-249307012.png
1474715-20190310130235017-2007034362.png

4.调试碰到问题(1分)

  • 对C++语法不熟练,写程序的时候需要一直百度C++语法与C语法的转换
  • 刚开始忽略了非法数据的情况,导致运行结果出现乱码

转载于:https://www.cnblogs.com/zyxaa/p/10504766.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值