日期类

用c++设计一个日期类Date,包括年、月、日等私有数据成员。要求实现日期的基本运算,如一日期加上天数、一日期减去天数、两日期相差的天数等。 立即下载
  1. /*
  2. * 程序的版权和版本声明部分
  3. * Copyright (c)2013, 烟台大学计算机学院学生
  4. * All rightsreserved.
  5. * 文件名称:score.cpp                           
  6. * 作    者:王俊                           
  7. * 完成日期:2013年3月18日
  8. * 版本号: v1.0      
  9. * 输入描述:略 
  10. * 问题描述:略 
  11. * 输出: 
  12. */ 
  13. 代码输出:

     

    #include <iostream>   
    using namespace std;  
    class Time  
    {  
    public:
    	void add_seconds(int);
    	void add_minutes(int);
    	void add_hours(int); 
    	inline void add_a_sec();//内置函数
    	inline void add_a_minute();
    	inline void add_an_hour();
        void set_time( );     
        void show_time( );
    	
    private:   
        bool is_time(int, int, int);  
        int hour;  
        int minute;  
        int sec;  
    };  
    void Time::set_time( )   
    {  
    	char c1,c2;  
        cout<<"请输入时间(格式hh:mm:ss)"<<endl;  
        while(1)  
        {   
    		cin>>hour>>c1>>minute>>c2>>sec;  
            if(c1!=':'||c2!=':')  
                cout<<"格式不正确,请重新输入"<<endl;  
            else if (!is_time(hour,minute,sec))  
                cout<<"时间非法,请重新输入"<<endl;  
            else   
                break;  
        }  
    }  
    void Time::show_time( )        
    {   
    	cout<<hour<<":"<<minute<<":"<<sec<<endl;  
    }  
    bool Time::is_time(int h,int m, int s)  
    {   
    	if (h<0 ||h>24 || m<0 ||m>60 || s<0 ||s>60)  
            return false;  
        return true;  
    }  
    inline void Time::add_a_sec()//各加一
    {
    	sec+=1; 
    	if(sec>60)
    		add_a_minute();
    }
    inline void Time::add_a_minute()
    {
    	minute+=1;
    	if(minute>60)
    		add_an_hour();
    }
    inline void Time::add_an_hour()
    {
    	hour+=1;
    	if(hour>23)
    		hour=0;
    }
    void Time::add_seconds(int n)//各加n
    {
    	sec+=n;
    	if(sec>60)
    	{
    		add_minutes(sec/60);
    		sec=sec%60;
    	}
    } 
    void Time::add_minutes(int n)//各加n
    {
    	minute+=n;
    	if(minute>60)
    	{
    		add_hours(minute/60);
    		minute=minute%60;
    	}
    }
    void Time::add_hours(int n)//各加n
    {
    	hour+=n;
    	if(hour>24)
    	{
    	hour=hour%24;	
    	}
    }
    
    int main( )  
    {   
    	Time t1;
    	Time t3;    
    	Time &t2=t1;
    	int h,m,s;//时,分,秒
        t1.set_time( );
    	cout<<"现在是:"<<endl;
    	t2.show_time( );
    	t1.add_a_sec();
    	cout<<"增加1秒后为:"<<endl;
    	t1.show_time( );
    	t1.add_a_minute();
    	cout<<"增加1分钟后为:"<<endl;
    	t2.show_time( );
    	t1.add_an_hour();
    	cout<<"增加1小时后为:"<<endl;
    	t1.show_time( ); 
        cout<<"请输入需要增加的时,分,秒:"<<endl;  
        cin>>h>>m>>s;  
        t3=t1;  
        t3.add_hours(h);  
        t3.add_minutes(m);  
        t3.add_seconds(s);    
        t3.show_time();
    	return 0;  
    }  
    
    
    
    


    运行结果:

  14. 心得体会:挂了那么多天的问题终于解决了,学会看报错很重要啊
c++实验 日期时间类定义 日期时间类定义,扩充实例编程中的日期类,为Date类增加一个成员函数,可以判 断一个日期是否是系统的当前日期。从键盘输入你的生日,如果今天是你的生日则显示“Happy Birthday!”,否则显示“还有XX天是你的生日”或“你的生日已经过去了XX天,明年的生日要再等YY天”。 (3)仿照Date类设计一个Time类,设计多个重载的构造函数,可以 设置时间、进行时间的加减运算、按各种可能的格式输出时间。 立即下载

相关推荐

定义一个Date 类,数据成员有year,month, day。以“年_月_日“的格式输出日期, 还提供把天加一的成员函数nextdate( ),要求能测试出如下的结果:

定义一个Date 类,数据成员有year,month, day。以“年_月_日“的格式输出日期, 还提供把天加一的成员函数nextdate( ),要求能测试出如下的结果: a. 能够进入下一个月。 b. 能够进入下一个年。 c. 能显示日期。

JAVA日期类

日期类 第一代日期类 1.Date类:精确到毫秒,代表特定的瞬间 2.SimpleDateFormat类:格式和解析日期的类 SimpleDateFormat格式化和解析日期的具体类。它允许进行格式化【日期 --> 文本】,解析【文本 --> 日期】和规范化 3.SimpleDateFormat类需要掌握方法【format:格式形式 parse:转换解析【就是将字符串日期格式转成Date类】】 4.一般情况下Date类和SimpleDateFormat类一起搭配使用 Date和

weixin_47267628的博客 6164

地震勘探中的频谱分析:从基础到应用

本文深入探讨了地震勘探中的频谱分析技术,从基础原理到实际应用。通过傅里叶变换等工具,频谱分析能有效识别不同地震波的频率特征,指导数据采集和处理。文章结合油田勘探案例,展示了如何利用振幅谱和相位谱提升信噪比,并介绍了智能滤波等前沿技术在地震数据处理中的应用。

weixin_42557830的博客 406

Java中的日期时间类详解

Java早期通过使用Date来计算时间,后来大部分Date类的方法都过时了,又转而希望用Calendar类代替Date类,然而Calendar类也是不尽如人意。因此专门在本文中对Java中Date类的基本概念、常见操作及相关类进行总结和归纳,方便日后的开发,希望对大家有所帮助。

Clearlove_S7的博客 1万+

【Linux系统】Kdenlive软件多机位同音频视频同步化处理

Kdenlive简介 官网链接:https://kdenlive.org/zh/ 命令行安装: apt-get install kdenlive Kdenlive能够进行多轨道视频编辑,可以使用和调整多条音频、视频轨道。每条轨道可以按需进行单独锁定、静音。 Kdenlive多机位同音频视频同步化处理步骤 1. 新建Kdenlive文件 选择<文件>-<新建>,建立新的kdenlive文件,初始设置为<视频轨:2>,<音频轨:2>。 视.

qq_31550269的博客 1884

Python实战:3步搞定DICOM转JPG/PNG(附批量处理脚本)

本文详细介绍了如何使用Python在3步内将DICOM医学影像转换为JPG/PNG格式,并提供了批量处理脚本。通过Pydicom、Pillow和NumPy库的组合,解决了像素值处理、批量转换效率和医学图像特性保留等关键问题,适合医疗AI开发者和放射科医生快速集成到工作流中。

numpy6sculptor的博客 591

《日期类》

第一代日期类 1) Date : 精确到毫秒,代表确定的瞬间 2)SimpleDateFormat: 格式和解析日期的类 。SimpleDateFormat 格式化和解析日期的具体类。它允许进行格式化(日期 -> 文本)、解析(文本 - > 日期) 和规范化 第二代日期类 第二代日期类,主要就是 Calendar类(日历)。Calendar是一个抽象类,它为特定瞬间与一组诸如 YEAR、MONTH、DAY_OF_MONTH 、 HOUR 等日历字段之间的转换提供了一些方法,并为操作日

m0_64318566的博客 833

多电平双向DC/DC直流变换器的工作原理(以三电平为例子)

多电平双向DCDC变换器的工作原理一、所用论文和参考文献1.1 主要是中文的文献二、工作原理和重要概念2.1 飞跨电容的作用2.2 三电平的工作原理1.3 多电平的优点二,一些注意点2.1 电感电流的变化2.2 多飞跨电容 多余三个电平的时候的解释(截图居多) 一、所用论文和参考文献 1.1 主要是中文的文献 用于超级电容储能系统的三电平双向直流变换器及其控制 (期刊) 多电平直流变换器及其控制...

qq_32419593的博客 2万+

【JavaSE】日期类

日期类 【知道怎么查,怎么用即可,不用每个方法都背】 1. 第一代日期类 Date:精确到毫秒,代表特定的瞬间 SimpleDateFormat:格式和解析日期的类。SimpleDateFormat格式化和解析日期的具体类。它允许进行格式化(日期->文本)、解析(文本->日期)和规范化。 应用实例 ...

兮动人 669

Vue集成天地图:从定位到交互绘图的完整实践指南

本文详细介绍了如何在Vue项目中集成天地图API,从基础配置到高级功能实现,包括定位、标点、画线等交互绘图功能。通过实战代码示例和性能优化技巧,帮助开发者快速掌握Vue与天地图的结合应用,提升地图开发效率。

weixin_29013129的博客 248

abaqus2matlab的安装与使用:如何用matlab提取abaqus的odb结果

官网abaqus2matlab官网地址matlab社区地址matlab社区地址在这里可以看到.m文件的源码论文:Abaqus2Matlab: A suitable tool for finite element post-processingabaqus2matlab可以处理.inp、.fil、.odb三种类型的文件。.inp文件:处理功能就在于只是单纯的输出inp文件,由于我自己写了自己的函数,不需要用到这个功能。

qianxin1234的博客 2016

第十三章 常用类 日期类

Date日期类

你好, 我在学java的博客 4768

视图库对接系列(GA-T 1400)四、视图库对接系列(本级)注册

在之前的步骤中,我们已经把项目大体的架构已经写出来了。那我们就来实现注册接口。GA-T 1400中的步骤如下:这里的话,我们实现的简单点, 我们不进去鉴权,也就是设备或平台找我们注册的话,我们直接返回成功,不进行验证。如果需要鉴权的话可看我的另外一篇文档。

qq_37716298的博客 1044

【C++】日期类

文章摘要: 本文详细介绍了C++中日期类的设计与实现,重点讨论了成员变量、默认成员函数、比较运算符重载以及加减运算符重载。日期类的成员变量包括年、月、日,默认成员函数中只有构造函数需要显式定义,其他如拷贝构造、赋值运算符重载、析构函数等均可由编译器自动生成。比较运算符重载通过复用==和<实现,简化了代码。加减运算符重载中,+复用+=的实现方式更为高效。文章通过代码示例展示了如何实现这些功能,并提供了调试和优化的建议。

Xie_sheng的博客 3142

分布式爬虫架构实战:Scrapy+RabbitMQ+浏览器池,百万级数据抓取成本直降60%(附架构图+源码)

任务调度瓶颈:Redis 作为消息队列,不支持复杂任务优先级,高并发下容易消息堆积,且单点故障会导致全量任务丢失;资源浪费严重:每个爬虫节点每次爬取动态页面都启动新浏览器,启动耗时3-5秒,CPU 占用率高达80%+,单机最多同时跑3个浏览器;扩展性差:新增节点需要手动同步任务队列,节点忙闲不均,无法根据任务量动态分配资源。# 从settings读取RabbitMQ配置# 注册信号:爬虫关闭时关闭RabbitMQ连接"""启动时建立RabbitMQ连接"""

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 1617

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

【C++深入浅出】日期类的实现

通过前面两期类和对象的学习,我们已经对C++的类有了一定的了解。本期我们的目标是实现一个完整的日期类,通过实现日期类的构造函数、运算符重载等等内容,加深对前面知识的理解。实现了日期类之后,我们就相当于自己实现了一个网上的日期计算器,如计算几天后的日期,计算日期差。

忆梦初心的博客 1637

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

『C++成长记』日期类的实现

完整实现日期类

小王又困了的博客 3584

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

【C++】日期类的实现

日期类接口实现

qq_66314292的博客 2921

日期类的实现

通过上面的代码我们可以看出函数是可以互用的,并且代码中灵活的利用this指针与引用d进行比较,得出最后的是否为真。

2301_79178723的博客 1077

【C++】—— 日期类的实现

学了一些类和对象的知识大家是不是感觉云里雾里的今天我们就来一篇轻松一点的内容,来通过之前学过的知识,试写一个日期类,巩固一下之前的知识

2302_78420373的博客 1714

【C++类和对象】日期类的实现

以上只是一个简单的日期类示例,实际的日期类可能还包括其他功能,例如日期的格式化等操作。这里只是提供了一个起点,大家可以根据自己的需求对日期类进行扩展

Renswc的博客 3051

日期类超详解(c++入门)

C++入门日期类详解

m0_67430750的博客 3841

C++ —— 实现一个日期类

通过对类和对象(这里链接是类和对象的介绍)的学习,类就是一种模型一样的东西,是对象一种抽象的描述。所以实现日期类,就是实现一个日期模型,里面有所对应的成员变量(属性:年/月/日),还有一些它的方法(成员函数:打印该日期、对日期加减等)。

2301_80873544的博客 1397
上一篇: VC++6.0单步执行
下一篇: 第三周项目4
sdwangjun
博客等级 码龄14年 35粉丝 116原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值