1.思维导图及学习体会

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


1.2 学习体会

这周刚刚学习了数据结构绪论和一部分线性表的知识,因为寒假提前预习了一会儿,在课堂上可以较快理解老师讲的内容。但是在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>}
数据操作:
void NewDate(DATE &date,ElemType day,ElemType mouth,ElemType year);
//操作结果:构造三元组,对year,mouth,day赋值
int ScDate(DATE date,ElemType day,ElemType mouth,ElemType year,ofstream &write);
//初始条件:三元组date存在,文件能成功打开
//操作结果:返回年月日,并判断是否合理
int IfRun(DATE date,ofstream &write);
//初始条件: 三元组date存在,文件能成功打开
//操作结果:若是闰年返回1,否则返回0.
int JudgeWeek(DATE date,ElemType day,ElemType mouth,ElemType year,ofstream &write);
//初始条件: 三元组date存在,文件能成功打开
//操作结果:判断输入的日期为星期几。
int EngMouth(DATE date,ofstream &write);
//初始条件: 三元组date存在,文件能成功打开
//操作结果:输出当前日期月份的英语单词
int AddDays(DATE date,ElemType day,ElemType mouth,ElemType year,ofstream &write);
//初始条件: 三元组date存在,文件能成功打开
//操作结果:返回当前日期增加days天的日期.
int CompareDay(DATE date,ofstream &write);
//初始条件: 三元组date存在,文件能成功打开
//操作结果:比较当前日期与otherDate的逻辑关系
}ADT Date

2.2.数据抽象:头文件


2.3数据封装说明

(1)构造日期数据类型函数

做法:动态分配内存空间,将year,month,day存入数组date中


(2)年月日输入函数并判断函数

做法:判断输入的年月日是否合法,否则重新输入




(3)判断是否是闰年函数

做法:简单的判断,输出结果


(4)判断星期几函数

做法:将数组中的数据存入变量,再对变量进行变换,通过数学公式得出结果


(5)输出月份英文名函数

做法:对数组中代表月份的位序进行判断,依次输出


ps:因为后面都一样,就不进行截图!!

(6)返回当前日期增加days天的日期函数

做法:先将数据存放到新定义的变量,再从新定义的变量的day开始加,对月份的day进行判断,依此类推到month和year的增加


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

做法:输入一个日期,判断是否合法,先比较年,再月,在日。


头文件


3.结果展示

测试文件数据,input.txt:

运行结果写入out.txt:

写入:

输出:


4.调试碰到问题

  • 1.对c++的语法可能不太熟悉,需要阅读同学代码或者上网查找。
  • 2.代码冗长,算法效率太低,看了范华同学的代码有点启发,在今后作业会加以使用。
  • 3.在文件的输入中遇到了很多问题,对于c++文件的语法掌握不牢。

DS博客作业01-日期抽象数据类型设计和实现的更多相关文章

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

    1.本章学习总结 1.1 思维导图 1.2学习体会 开学就来了个大作业,还要求用的是c++语法,作为一个只听过没学过的未知语法,靠着CSDN和寝室大佬的帮助下渐渐地了解了一些c++的使用,现在也可以使 ...

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

    1.思维导图及学习体会 1.1第一章绪论知识点思维导图 1.2 学习体会 这次博客园和大作业是我在编程学习中的有意义的进步,第一次尝试使用vs,并且通过同学的一些网站的推荐,和热心同学的帮忙,简单学会 ...

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

    1.思维导图及学习体会(2分) 1.1第一章绪论知识点思维导图 1.2 学习体会 2.大作业作业内容 (6分) 2.1 设计日期的ADT类型(1分) ADT DATE{ 数据对象:D={year,mo ...

  4. DS博客作业01--日期抽象数据类型

    1.思维导图及学习体会(2分) 1.1第一章绪论知识点思维导图 1.2学习体会 从暑假看视频到开学的预习,我感觉数据结构与c语言比起来更加抽象,更加难理解,那些概念也只能理解一些字面意思,对时间复杂度 ...

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

    1.思维导图和学习体会 1.1绪论知识思维导图 1.2学习体会 通过这几节课数据结构的新学习,让我感到了难度,很多概念性的东西,不是很好理解,老师在讲内容的时候,很容易跟不上节奏,我发现这门课的学习一 ...

  6. DS博客作业05--查找

    这个作业属于哪个班级 数据结构--网络2011/2012 这个作业的地址 DS博客作业05--查找 这个作业的目标 学习查找的相关结构 姓名 黄静 目录 0.PTA得分截图 1.本周学习总结 1.1 ...

  7. C博客作业01——分支,顺序结构

    C博客作业01--分支,顺序结构 0.展示PTA总分 1本章学习内容 1.1学习内容总结 1)格式化输出函数printf(),scanf(). 它是什么? 对于初学者而言,一开始了解接触它们,只是被硬 ...

  8. DS博客作业03--树

    这个作业属于哪个班级 数据结构--网络2011/2012 这个作业的地址 DS博客作业03--树 这个作业的目标 学习树结构设计及运算操作 姓名 黄静 目录 0. PTA得分截图 1. 本周学习总结 ...

  9. DS博客作业——树

    DS博客作业--树 1.本周学习总结 1.思维导图 2.谈谈你对树结构的认识及学习体会. 在树这一章节,我们学习的是二叉树的算法. 树的构建:一种是直接给树的顺序存储结构的字符串,一种是通过先序遍历和 ...

随机推荐

  1. Java:文件字符流和字节流的输入和输出

    最近在学习Java,所以就总结一篇文件字节流和字符流的输入和输出. 总的来说,IO流分类如下: 输入输出方向:     输入流(从外设读取到内存)和输出流(从内存输出到外设) 数据的操作方式: 字节流 ...

  2. jquery-防多店铺购物车结算全选,单选,及删除,价格计算

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  3. OS + CentOS cmake

    s Linux编译安装cmake最新版本 https://blog.51cto.com/sadoc/1910753 https://cmake.org/download/ https://github ...

  4. shell 生成目录的树状视图、生成文件及子目录的汇总信息

    -exec 创建子shell $ find . -exec sh -c 'echo -n {} | tr -d "[:alnum:]_.\-" | \ tr "/&quo ...

  5. 学习string,stringBuffer时遇到的问题

    今天学习string和stringBuffer.了解了两者的区别,然后去看java api都有啥方法.stringBuffer类有indexOf方法,于是写了下面的代码 String str = &q ...

  6. windows8.1全角与半角切换快捷键

    windows8.1全角与半角切换快捷键: shift + 空格

  7. git下载/上传文件提示:git did not exit cleanly

    问题:git操作下载/上传文件,提示信息如下 TortoiseGit-git did not exit cleanly (exit code 1) TortoiseGit-git did not ex ...

  8. edx的ST

    卷积概率论 顺便了解了一下卷积函数 反正以后学CNN还要再看 这个mit老师水平真的不太行 倒是以这个为源头找到不少好的youtube视频 看看她题目出的怎么样吧... cousera今天估计没时间了

  9. C++入门篇十二

    成员变量和成员属性: 静态成员函数和静态成员变量是不属于对象的,所以不占有空间,非静态成员是属于对象的,占有存储空间,空类大小1 #include "pch.h" #include ...

  10. DGTween 控制物体移动并且播放相应的动画

    假设有以上的状态,咱们不动的时候需要播放发呆的动画,然后任意时刻会进行Run的行动.于是有了以上的状态机. 为了完成目标追踪,比如跟随咱们的光标,这时候就需要将如以下代码: ani = gameObj ...