- 1、本文档共24页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
万年历程序简介
万年历
一、程序说明
本程序完成四个功能:1、当前日期,2、当月日历,3、当年日历,4、万年历。四个功能分别对应不同的需求。
运行exe程序可得到下图:
二、程序设计要求
1、打开程序首先应该显示当前日期,比如:日期、时间。
2,、有选择功能,需要输入,输入数字选择功能,便可得到想要的结果。如:
(1)、当月日历,
(2)、当年日历,
(3)、万年历,
然后输入需要查询的年份即可。
(4)、退出。
3、输入后根据提示再次输入年份或月份。可得到一个相应的的结果。
4、增加输入甄别功能,即输入非法数据(如负数、小数等情况)的识别显示功能。
三、程序设计的源代码及注释
////////////////////////////////////////////////////////////////////////////////
// 万年历(C++源代码),完整的代码,直接可以在VC6.0编译通过
//
////////////////////////////////////////////////////////////////////////////////
#includeiostream
#includestring
#includefstream
#includeiomanip
using namespace std;
#includetime.h
ofstream fout(日历.txt);
void Printtitle(int n);
int OrEndl(int n);
string Choose(); //选择功能
int Calculate(int mon,int day);
void Printday(int a);
void FirstDay(int wday);
void SomeYear(int p);
void ThisMonth(); //打印当月日历的主函数
void PrintFirstNum(int mon);
void Printyear(int year);
void ThisYear(int p); //打印当年日历的主函数
void Month(int n);
void Printnum(int q,int mon);
int Firstwday[12]; //储存每个月1号的星期数
struct tm *local;
string ch;
int a[12]={31,28,31,30,31,30,31,31,30,31,30,31}; //储存每月的天数
int main(void)
{
long t;
time(t);
local=localtime(t);
local-tm_year=local-tm_year+1900;
local-tm_mon++;
cout今天是:local-tm_year年local-tm_mon
月local-tm_mday日,;
fout今天是:local-tm_year年local-tm_mon
月local-tm_mday日,;
Month(local-tm_wday);
coutendl;
foutendl;
cout当前时间是:local-tm_hour时local-tm_min分local-tm_sec
秒local-tm_wdayendl;
fout当前时间是:local-tm_hour时local-tm_min分local-tm_sec
秒local-tm_wdayendl;
string flag;
int sum;
if(((local-tm_year%4==0)(local-tm_year%100!=0))||(local-tm_year%400==0))
a[1]=29;
sum=Calculate(local-tm_mon,local-tm_mday);
int p=sum-(local-tm_wday+1)-(sum/7)*7;
do{
flag=Choose();
if(flag==1) //根据选择的数字确定调用哪个函数
ThisMonth();
else if(flag==2)
ThisYear(p);
else if(fla
文档评论(0)