ImageVerifierCode 换一换
格式:DOCX , 页数:18 ,大小:16.86KB ,
资源ID:16426270      下载积分:5 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-16426270.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(万年历c++.docx)为本站会员(b****6)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

万年历c++.docx

1、万年历c+Mian函数#include #include date.husing namespace std;int main() char i=9; int yy,mm,dd;/用来接收日期 Query q; q.showMenu(); calender c;/用来接收日期 coutyymmdd; c.readcalender(yy,mm,dd); couti; system(cls); /清除屏幕 q.showMenu(); q.doMenu(i); q.showTip(); return 0;Date.h#ifndef DATE_H_INCLUDED#define DATE_H_INCL

2、UDED#include#include#include#include #include#include#includeusing namespace std;class calenderprivate: int day; int month; int year;public: calender(); calender(int d,int m,int y):day(d),month(m),year(y) int dayInMnoth();/返回该月的天数,如闰年二月的天数,29 int getMonth();/返回当前日期的月份 int getYear(); int getDay(); bo

3、ol isLeapYear();/判断闰年 int numeberOfdays();/返回一月份以来的天数 void setMonth(int mm);/更新当前日期的月份 void setYear(int yy); void setDay(int dd); int differDays();/距离1990.1.1相差多少天 int differDays(calender &d1);/相差多少天 int firstDay();/当月的第一天是星期几 void displayTitle();/输出月份和年份以及后面的星期几的名称 void displayDates();/输出星期几下面的日期 v

4、oid readcalender(int yy,int mm,int dd);/读入日期 void weekDay();class Querypublic: calender c; Query(); void QueryYear();/查询一年的日历 void QueryMonth();/查询某年某月的日历表 void QueryDay();/查询某年某月的某天 void QuerydifferDays();/计时倒数天数 void showMenu();/显示菜单 void showTip();/显示操作提示 void doMenu(char n);#endif / DATE_H_INCLU

5、DED实现文件Date.cpp#includedate.hcalender:calender() year=0; month=0; day=0;int calender:getMonth()/返回当前日期的月份 return month;int calender:getYear() return year;int calender:getDay() return day;int calender:dayInMnoth()/返回当月的天数 switch(getMonth() case 1: return 31; break; case 2: return 28+isLeapYear(); bre

6、ak; case 3: return 31; break; case 4: return 30; break; case 5: return 31; break; case 6: return 30; break; case 7: return 31; break; case 8: return 31; break; case 9: return 30; break; case 10: return 31; break; case 11: return 30; break; case 12: return 31; break; return 0;bool calender:isLeapYear

7、()/闰年的判断,返回true为闰年 int n=getYear(); if(n%4) if(n%100=0) if(n%400=0) return true; else return false; else return true; else return false;int calender:numeberOfdays()/返回一月份以来的天数 int n=getDay(); switch(getMonth()-1) case 0: return n; break; case 1: return n+31; break; case 2: return n+31+28+isLeapYear(

8、); break; case 3: return n+31+28+isLeapYear()+31; break; case 4: return n+31+28+isLeapYear()+31+30; break; case 5: return n+31+28+isLeapYear()+31+30+31; break; case 6: return n+31+28+isLeapYear()+31+30+31+30; break; case 7: return n+31+28+isLeapYear()+31+30+31+30+31; break; case 8: return n+31+28+is

9、LeapYear()+31+30+31+30+31+31; break; case 9: return n+31+28+isLeapYear()+31+30+31+30+31+31+30; break; case 10: return n+31+28+isLeapYear()+31+30+31+30+31+31+30+31; break; case 11: return n+31+28+isLeapYear()+31+30+31+30+31+31+30+31+30; break; return 0;int calender:differDays()/距离1900.1.1相差多少天 int n;

10、 calender d0(1,1,1900); /以1900年一月一日为起点,当天为星期一 if(getYear()-d0.getYear()%400!=100) n=(getYear()-d0.getYear()/4*1461+(getYear()-d0.getYear()%4)*365+numeberOfdays(); else n=(getYear()-d0.getYear()/4*1461+(getYear()-d0.getYear()%4)*365+1+numeberOfdays(); return n;int calender:differDays(calender &d1)/与某

11、个日期(d1)相差多少天 int n; if(abs(getYear()-d1.getYear()%400!=100) n=abs(getYear()-d1.getYear()/4*1461+(getYear()-d1.getYear()%4)*365+numeberOfdays(); else n=abs(getYear()-d1.getYear()/4*1461+abs(getYear()-d1.getYear()%4)*365+1+numeberOfdays(); return n;int calender:firstDay()/当月第一天是星期几 int l=differDays()-

12、getDay()+1;/当月第一天与1900年一月一日相差多少天 switch(l%7) case 0: return 0; break; case 1: return 1; break; case 2: return 2; break; case 3: return 3; break; case 4: return 4; break; case 5: return 5; break; case 6: return 6; break; return 0;void calender:setYear(int yy)/更新年份 if(yy1990) cout无法更新月份12|mm1) cout无法更

13、新月份31|dd1) cout无法更新天数endl; day=dd;void calender:displayDates()/打印日期 int monthLength=dayInMnoth(); int dayValue=1; int day=0,first=firstDay(); while(dayfirst) coutsetw(7) ; day+; while(dayValue=monthLength) coutsetw(7)dayValue; dayValue+; if(day=6) coutendl; day=(day+1)%7; if(day!=0) coutendl;void ca

14、lender:displayTitle()/打印月份与年份 switch(getMonth() case 1: cout一月 getYear()endl; break; case 2: cout二月 getYear()endl; break; case 3: cout三月 getYear()endl; break; case 4: cout四月 getYear()endl; break; case 5: cout五月 getYear()endl; break; case 6: cout六月 getYear()endl; break; case 7: cout七月 getYear()endl;

15、break; case 8: cout八月 getYear()endl; break; case 9: cout九月 getYear()endl; break; case 10: cout十月 getYear()endl; break; case 11: cout十一月 getYear()endl; break; case 12: cout十二月 getYear()endl; break; default: cout错误!endl; break; cout星期一 星期二 星期三 星期四 星期五 星期六 星期日 0) setDay(dd); else setDay(0); if(mm0) set

16、Month(mm); else setMonth(0); setYear(yy);void calender:weekDay()/确认某天是星期几 switch(differDays()%7) case 0: cout星期日 ; break; case 1: cout星期一 ; break; case 2: cout星期二 ; break; case 3: cout星期三 ; break; case 4: cout星期四 ; break; case 5: cout星期五 ; break; case 6: cout星期六 ; break; Query:Query() c.setDay(0); c

17、.setMonth(0); c.setYear(0);void Query:QueryYear()/查询一年的日历 int mm; for(c.setMonth(mm=0); mm12; +mm) c.displayTitle(); c.displayDates(); void Query:QueryMonth()/查询某年某月的日历表 c.displayTitle(); c.displayDates();void Query:QueryDay()/查询某年某月的某天是星期几 c.weekDay();void Query:QuerydifferDays()/计时倒数天数 c.differDay

18、s(); calender d; int yy,mm,dd; coutyymmdd; d.readcalender(yy,mm,dd); cout距离d.getYear()年d.getMonth()月d.getDay()日还有d.differDays()-c.differDays()天;void Query:showMenu()/显示菜单 cout|-|endl; cout| 万 年 历 |endl; cout|-|endl; cout| 1.查询某月的月历 |endl; cout| 2.打印某年的日历 |endl; cout| 3.距离某日倒计时 |endl; cout| 4.某日具体星期几

19、 |endl; cout| 0.安全退出本系统 |endl; cout|-|endlendl;void Query:showTip()/显示操作提示 coutendl; cout-操作完成-endl; cout-选择04继续-endl; cout请选择:;void Query:doMenu(char n)/执行菜单 switch(n) case 1: QueryMonth(); break; case 2: QueryYear(); break; case 3: QuerydifferDays(); break; case 4: QueryDay(); break; case 0: exit(1); break; default: cout输入错误!;

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2