- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
日期类
题目描述: 自定义一个简单的日期类DateType,它具有数据成员y、m、d,用来表示当前日期的年、月、日。而后设计该类欲实现(完成)的功能,进而设计出相应的类成员函数。 设想功能: 计算某天为星期几 计算两个日期之间有多少天间隔 对一个日期一次增加几天,获得增加后日期 根据出生日期判断星座 自动获得计算机当前时间,根据输入生日判断已经活了多少天 问题解决思路: 根据1年1月1日是星期一的事实,求出一个日期与1年1月1日之间的间隔,将此间隔模除7即可得到星期几 求出两个日期分别与1年1月1日的间隔,然后取两个间隔之差的绝对值,可以得到这两个日期之间的间隔 对一个日期一次增加几天,先根据每月的天数判断是否要向月进位,再根据月份判断是否要向年进位 获得日期后分别与每个星座的日期范围相比较,符合范围即属于这个星座 利用相关函数提取计算机当前系统时间,然后分别得到现在的年月日,计算这个时间与生日的差,这样就可以得到从出生到现在总共生活了多少天 函数设计: void incrementday();//一次增加几天后获得日期 int gettotalday();//计算该日期与1年1月1日之间有多少天 void whichday();//计算某天为星期几 void getdata();//输入日期,当输入错误数据时报警并要求重新输入 void printDate();//输出日期 void constellation();//根据出生日期判断星座 int nowtotalday();//自动获得计算机当前时间,并且计算出与1年1月1日的差,用于根据您输入的生日判断您活了多久 此外还需要定义一个数组存放每个月的天数dayofmonth[12]={31,28,31,30,31,30,31,31,30,31,30,31}; 时间类 class DataType { private: int y,m,d; //数据成员,表示当前日期的年、月、日 int totalday; //表示该日期与1年1月1日的差 public: void incrementday(); int gettotalday(); void whichday(); void getdata(); void printDate(); void constellation(); int nowtotalday(); }data1,data2; 主函数中利用while循环控制程序能多次运行,用switch语句控制用户的选择 Main() {介绍程序功能 是否开始程序 输出功能列表 转入不同功能模块 是否继续 } 计算星期几:case 1:data1.getdata(); //输入日期 data1.gettotalday(); //计算该日期与1年1月1日的差 data1.printDate(); //输出日期 data1.whichday(); /计算并输出该日期是星期几 break; 计算两日期间隔:case 2:cout输入第一个日期:endl; data1.getdata(); //输入第一个日期 data1.gettotalday(); //计算该日期与1年1月1日的差 data1.printDate(); //输出第一个日期 cout输入第二个日期:endl; data2.getdata(); //输入第二个日期 data2.gettotalday(); //计算该日期与1年1月1日的差 data2.printDate(); //输出第二个日期 int m; m=data2.gettotalday()-data1.gettotalday();//计算两日期之间的差 if (m=0) cout 两个日期之间有m天 endl;//日期一在日期二之前 else {m=-m;cout 两个日期之间有m天 endl;} //如果日期一在日期二之后 break; 对一个日期一次增加几天,获得增加后日期 case 3:cout输入您要增加的日期:endl; data1.getdata(); //输入日期 data1.printDate(); //输出日期 data1.incrementday();//计算增加几天后的日期 break; 判断星座 case 4:cout星座是按照公历日期判断的,输入您的阳历生日:endl; data1.getdata(); //输入日期 data1.constellation
您可能关注的文档
- 扁鹊真名叫秦越人,是战国时代著名的医学家。他救死扶伤....ppt
- 扫描案例分析.ppt
- 扬帆筱筱.pptx
- 抢凳子游戏规则.ppt
- 护肤品的真话.pptx
- 抵押合同范本介绍.pptx
- 按内容来分类:可分为叙事诗、抒情诗、送别诗、边塞诗、....ppt
- 拥有青春的日子里.ppt
- 撑伞的日子课件.ppt
- 携手希望,搏击中流.ppt
- 2025年山东化工职业学院单招职业技能测试题库最新.docx
- 2025年山东化工职业学院单招职业技能测试题库推荐.docx
- 2025年山东化工职业学院单招职业倾向性考试题库推荐.docx
- 2025年山东化工职业学院单招职业倾向性考试题库附答案.docx
- 2025年山东化工职业学院单招职业倾向性测试题库附答案.docx
- 2025年山东化工职业学院单招职业技能测试题库必考题.docx
- 2025年山东化工职业学院单招职业倾向性考试题库最新.docx
- 2025年山东化工职业学院单招职业倾向性测试题库最新.docx
- 2025年山东化工职业学院单招职业技能考试题库最新.docx
- 2025年山东化工职业学院单招职业倾向性测试题库推荐.docx
文档评论(0)