博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
DS博客作业01--日期抽象数据类型设计与实现
阅读量:5037 次
发布时间:2019-06-12

本文共 1192 字,大约阅读时间需要 3 分钟。

日期抽象数据类型设计与实现

1.思维导图及学习体会

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

1474675-20190309150059900-1880445001.png

1.2学习体会

通过一周的接触,大致了解了数据结构是对数据的处理,是研究数据间的关系的,比起上学期的c语言来说,我认为学习数据结构将会更加吃力,毕竟数据是比较抽象的东西。这一周也接触了c++的语法,发现了c++比c简洁得多,第一次在编程中运用c++语法,还是很不熟练,经常要去查找资料。

2.大作业作业内容

2.1 设计日期的ADT类型

ADT Date{数据对象:    D = {year,month,day | year,month,day属于int类型}数据关系:    R = {
,
}数据操作: Status DateDestroy(DATE &date); //销毁 Date Status InitDate( DATE &date , ElemType year, ElemType month, ElemType day); //构造日期结构 Status IsLeapyear( ElemType year ); //判断是否是闰年 Status DateJudge(DATE date); //操作结果:判断是否是合法数据。 Status WhichDay(DATE date,ofstream &outFile); //判断是星期几 Status WhichMonth( DATE date,ofstream &outFile); //判断是几月 Status AddDay(DATE date,ofstream &outFile); //增加一个天数 Status DoCompare(DATE date,ofstream &outFile); //与另一个日期做比较 }ADT Date

2.2.数据抽象:头文件

Date.h

1474675-20190309150807047-2076954170.png

2.3数据封装说明

(1)构造日期数据结构

1474675-20190309150943968-339889098.png

(2)销毁Date函数

1474675-20190309151016614-835958456.png

(3)判断是否是闰年

1474675-20190309151044395-1774300531.png

(4)判断是否是合法数据

1474675-20190309151112610-1116307927.png

(5)判断是星期几

1474675-20190309151142432-451511948.png

(6)判断是几月份

1474675-20190309151205669-629235184.png

(7)当前日期增加Add天的日期函数

1474675-20190309151251697-1357517074.png

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

1474675-20190309151335994-1830765763.png

1474675-20190309151348717-469048926.png

3.结果展示

1474675-20190309151449091-916710570.png

1474675-20190309151459445-1721196735.png
1474675-20190309151621460-260409150.png
1474675-20190309151629858-1109256209.png
1474675-20190309151644121-1378081223.png
1474675-20190309151653131-1936940020.png

44.调试碰到问题

Q1:在计算任意给的日期是星期几时,不知如何计算,参考同学代码发现基姆拉尔森计算公式可以计算所以在代码中加入该公式Q2:在判断日期是否是合法数据时,闰年和非闰年要分开,后来发现可以用数组来存放,在依照对二月进行修改Q3:在计算增加一个天数时,运用了c语言的判断语句,使得代码更为简洁

转载于:https://www.cnblogs.com/B-hai/p/10500945.html

你可能感兴趣的文章
第10周15/16/17
查看>>
Tomcat
查看>>
./是当前目录 ../是当前的上一级目录。上上级就是../../一般绝对路径时候常用...
查看>>
oracle连接的三个配置文件(转)
查看>>
Java 8 中如何优雅的处理集合
查看>>
[HNOI2012]永无乡 线段树合并
查看>>
Centos下源码安装git
查看>>
gulp-rev-append md5版本号
查看>>
IO流之File类
查看>>
sql 基础语句
查看>>
CF717A Festival Organization(第一类斯特林数,斐波那契数列)
查看>>
控件发布:div2dropdownlist(div模拟dropdownlist控件)
查看>>
Oracle composite index column ordering
查看>>
kaggle竞赛
查看>>
区块链入门教程
查看>>
npm常用命令
查看>>
南海区行政审批管理系统接口规范v0.3(规划)4.2.【queryExpireList】当天到期业务查询...
查看>>
[置顶] 细说Cookies
查看>>
[wp7软件]wp7~~新闻资讯,阅读软件下载大全! 集合贴~~~
查看>>
生成指定位数随机数的方法
查看>>