zoukankan      html  css  js  c++  java
  • DS博客作业01-日期抽象数据类型设计和实现

    1.思维导图及学习体会

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

    1.2 学习体会

    (1)之前有了解过c++,c++是兼容C的面向过程和面向对象的程序设计语言,语法更加方便,更加智能,cout、cin、string便是一些例子,
        之前接触图像界面是入门级的easyx,后来了解到c++写的qt,希望学习c++之后可以学习qt。
    (2)数据结构理论较多,代码相对上学期来说比较抽象,算法比较高深,需要更好的思维。
    (3)这个星期代码量感觉不多,更多是概念,难度更大,数据封装要求更高,写代码解决问题的同时也要考虑性能了。
    

    2.大作业作业内容

    2.1 设计日期的ADT类型

    ADT Date{
    数据对象:
                 D = {year,month,day | year,month,day属于int类型}
    数据关系:
                R = {<year,month>,<month,day>}
    数据操作:
    void  InitTriplet(TIME *&head);//读入日期
    //构造三元组,year,month,day对三元组进行赋值。
    void Put(TIME const &T);//输出日期
    //判断日期是否合法,并输出相应提示
    void SeekWeek(TIME  T);//计算星期
    //输出是星期几
    void CheckDate(TIME const &T,int &flag);//检查是否合法
    //检查日期是否合法,并提示
    void LeapYear(TIME const &T);//判断是否闰年
    //判断年份是否是闰年,并输出结果
    void SeekMonth(TIME const &T);//月份单词
    //输出相应月份英文
    void DateAdd(TIME T);//日期加法
    //用户输入一个天数,计算加上天数后的日期并输出结果
    void CompareTime(TIME T);//日期比较
    //用户输入一个日期,比较两个日期并输出结果
    void DeleteList(TIME *&head);//链表删除
    

    2.2.数据抽象:头文件

    typedef struct Time//结构体
    {
        int year;
        int month;
        int day;
        struct Time *next;
    }TIME;
    void  InitTriplet(TIME *&head);//读入日期
    //构造三元组,year,month,day对三元组进行赋值。
    void Put(TIME const &T);//输出日期
    //判断日期是否合法,并输出相应提示
    void SeekWeek(TIME  T);//计算星期
    //输出是星期几
    void CheckDate(TIME const &T,int &flag);//检查是否合法
    //检查日期是否合法,并提示
    void LeapYear(TIME const &T);//判断是否闰年
    //判断年份是否是闰年,并输出结果
    void SeekMonth(TIME const &T);//月份单词
    //输出相应月份英文
    void DateAdd(TIME T);//日期加法
    //用户输入一个天数,计算加上天数后的日期并输出结果
    void CompareTime(TIME T);//日期比较
    //用户输入一个日期,比较两个日期并输出结果
    void DeleteList(TIME *&head);//链表删除
    

    2.3数据封装说明

    (1)构造三元组函数


    (2)判断日期是否合法


    (3) 输出规范日期

    (4)计算星期

    (5)判断是否闰年

    (6)输出月份英文

    (7)日期加法




    (8)日期比较


    (9)删除链表

    (10)主函数


    3.结果展示

    4.调试碰到问题

    1.c++了解不多
    2.此次作业结构相对简单,问题不多
  • 相关阅读:
    java第四次作业
    java第五次作业
    java第三次作业
    第二次学习笔记
    java学习笔记
    第十四周完成情况
    课程计划进程
    课程设计分工
    JAVA学习笔记(六)
    JAVA学习笔记(五)
  • 原文地址:https://www.cnblogs.com/codedawn/p/10472879.html
Copyright © 2011-2022 走看看