1.思维导图及学习体会(2分)
1.1第一章绪论知识点思维导图
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.数据抽象:头文件
2.3数据封装说明
(1)构造三元组函数
(2)判断日期合法性
(3)判断是否闰年
(4)输出星期几
(5)输出月份英文名
(6)输出加入一定天数后的日期
(7)输出与另一个日期比较的关系
(8)主函数
3.结果展示(1分)
4.调试碰到问题(1分)
- 对C++语法不熟练,写程序的时候需要一直百度C++语法与C语法的转换
- 刚开始忽略了非法数据的情况,导致运行结果出现乱码