1.本章学习总结
1.1 思维导图
1.2学习体会
开学就来了个大作业,还要求用的是c++语法,作为一个只听过没学过的未知语法,靠着CSDN和寝室大佬的帮助下渐渐地了解了一些c++的使用,现在也可以使用一些语法来代替c写东西了。在这其中发现c++的使用比C语言简单一点,比如:输入和输出,字符串合并可以直接c++用加法,还有c++读取文件,写入文件的用法也比C简单得多。要学习的东西还有很多啊!
2.大作业内容
2.1设计日期的ADT类型
ADT Date{
数据对象:
D = {year,month,day | year,month,day属于int类型}
数据关系:
R = {<year,month>,<month,day>}
数据操作:
status readTxt(date &D, int year, int month, int day);
//初始化日期
//操作结果:构造了日期数据结构Date,其中year,month,days分别为Date中的年,月,日
status judgeRight(date &D,ofstream &outline);
//初始条件:date存在
//操作结果:判断日期是否属于正常范围
status leap_year(int year);
//初始条件:date存在
//操作结果:判断该年是否为闰年
string animals(date &D);
//初始条件:date存在
//操作结果:计算年份对应生肖
void CalculateWeekDay(date &D, ofstream &outline);
//初始条件:date存在
//操作结果:基姆拉尔森计算公式根据日期判断星期几
void addDate(date &D, ofstream &outline);
//初始条件:date存在
//操作结果:对于增加天数的计算
void compare(date &D, ofstream &outline);
//初始条件:date存在
//操作结果:比较日期的关系
2.2数据抽象
头文件
- Date.h
- Common.h
![](https://img2018.cnblogs.com/blog/1474668/201903/1474668-20190311224949443-1481940807.png)
2.3数据封装
1.构造日期数据类型函数
2.销毁日期数据类型函数
3.判断是否是闰年函数
4.输出是星期几的函数
5.输出月份的英文名的函数
6.判断输入日期之间的逻辑关系的函数
7.判断日期是否合法的函数
8.判断日期的函数函数
2.3运行结果
3调试中的问题
A1:首先是C++中文件开闭的操作不知道该如何实现。
A2:其次就是函数之间的传参问题,应为这次的函数类型较多所以会经常弄混。
A3:日期会输不进去和写不进txt文件的问题
A4:在日期相加函数上面不会,借鉴了同学的代码