计算任意指定公元日期总天数及星期几,查询输出日历到记事本的追加及覆盖.微软农历文档
此 Windows 窗体应用程序演示如何将动画图像绘制到屏幕。
VS组件管理器NuGet Package Manager for Visual Studio 2013
c++
bool 折半查找(int *数组, int 序, int 值)
{
int 头 = 0;//无序数组
while (头 < 序 - 头)if (数组[头] == 值 || 数组[(序 - 1) - 头++] == 值)return true;
else cout << "循环次数:"<<头 << "\t";
return false;
}
struct 阳历节日类{ int 日期; string 内容; };
int 数组折半查找法(阳历节日类 数组[], int 维度, int 值)
{
int 返回序号(-1), 头(0), 尾 = 维度 - 1;
do
{
if (数组[尾].日期 == 值)
{
返回序号 = 尾; break;
}
else if (数组[头].日期 == 值)
{
返回序号 = 头; break;
}
} while (++头 <= --尾);
return 返回序号;
}
int 日子[] = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
int 月1号总天数(int 年, int 月, bool 闰)
{
int 计日(1), 计月 = 月 - 1;
日子[1] = (闰) ? 29 : 28;/*用自己计算方法,获得指定年和月日期的累计总天数,由于每4年闰因此+除4的整商(含百年),由于每百年不闰因此-除100的整商(含四百年),由于每400年闰因此+除400的整商*/
while (计月)计日 += 日子[--计月];/*1年-1后0年由月累计,大于1年的计算已过年天数+月累计,如5年计算前4年增1,之后类推,解决0不能作为被除数*/
return 计日 + ((--年) ? 365 * 年 + (年 / 4 - 年 / 100 + 年 / 400) : 0);
}
void 阳历节日日历(string 保存文件名, char* 时间, int 年, int 月 = 1, int 日 = 1)
{
阳历节日类 阳历节日[] = {
{ 101, "元旦节 " }, { 214, "情人节 " }, { 308, "妇女节 " }, { 312, "植树节 " },
{ 401, "愚人节 " }, { 422, "地球日 " }, { 501, "劳动节 " }, { 504, "青年节 " },
{ 512, "护士节 " }, { 601, "儿童节 " }, { 608, "海洋日 " }, { 928, "孔子诞 " },
{ 1001, "国庆节 " }, { 1006, "老人节 " },
{ 1002, "节假日 " }, { 1003, "节假日 " }, { 1004, "节假日 " }, { 1005, "节假日 " }, { 1006, "节假日 " }, { 1007, "节假日 " } };
bool 闰 = ((!(年 % 4) && 年 % 100) || !(年 % 400)) ? true : false;/*四年一闰,百年不闰,四百年再闰。*/
int 月总天数 = 月1号总天数(年, 月, 闰), 星期1号 = 月总天数 % 7/*当前月1日是星期几*/, 当天星期 = (月总天数 + 日 - 1) % 7/*获取指定日期的总天数和星期几*/;
int 填充(1), 月号(1);
string 一周[7];
printf_s("今天:%d年%d月%d日 星期%d %s ", 年, 月, 日, 当天星期, (闰 && 月 == 2) ? "闰月" : "");
printf("时间:%s\n", 时间);
printf_s("星期日 星期一 星期二 星期三 星期四 星期五 星期六\n");
std::ofstream 文件("浤济的专栏-贤发居士的万年历保存文件" + 保存文件名 + ".txt", ((保存文件名 != "") ? std::ios::app : std::ios::out));
文件 << 年 << "年" << 月 << "月" << 日 << "日 当天星期:" << 当天星期 << ((闰 && 月 == 2) ? "闰月" : "") << " 时间:" << 时间 << "\n";
文件 << "星期日 星期一 星期二 星期三 星期四 星期五 星期六\n";
do
{
if (填充 > 日子[月 - 1] + 星期1号 || 填充 <= 星期1号)文件 << " . ";
else { if (月号 == 日)文件 << "△ " << ((月号<10) ? "0" : "") << 月号 << " "; else 文件 << " " << ((月号<10) ? "0" : "") << 月号 << " "; }
(填充 > 日子[月 - 1] + 星期1号 || 填充 <= 星期1号) ? printf_s("%6s ", ".")
: printf_s(月号 == 日 ? "△%4d " : "%6d ", 月号++);
int 序 = 数组折半查找法(阳历节日, sizeof(阳历节日) / sizeof(阳历节日[0]), 月 * 100 + 月号 - 1);
一周[(填充 - 1) % 7] = (序 >= 0) ? 阳历节日[序].内容 : " ";
if (!(填充 % 7))
{
printf_s("\n");
月总天数 = 0;/*利用之上不再用到的变量*/
while (月总天数 < 7) std::cout << 一周[月总天数++];/*另一行输出节日内容*/
printf_s("\n------------------------------------------------\n");
文件 << "\n";
月总天数 = 0;
while (月总天数 < 7) 文件 << 一周[月总天数++];/*另一行输出节日内容*/
文件 << "\n------------------------------------------------\n";
}
} while (++填充 <= 42);
std::cout << std::endl;
}
CTime time(CTime::GetCurrentTime());
SYSTEMTIME timeDest;
time.GetAsSystemTime(timeDest);/*获取系统日期*/
int 年 = timeDest.wYear, 月 = timeDest.wMonth, 日 = timeDest.wDay;
char 时间[128];
_strtime_s(时间, 128);
阳历节日日历("", 时间, 年, 月, 日);
string 保存文件名("");
int 输入年月日[4];
printf_s("输入保存文件名,该文件将保存在执行文件的当前目录中的txt文件。\n");
std::cin >> 保存文件名;
printf_s("输入起始年、月和结束年、月,以空格隔开\n");
scanf_s("%d %d %d %d", &输入年月日[0], &输入年月日[1], &输入年月日[2], &输入年月日[3]);
do
{
阳历节日日历(保存文件名, 时间, 输入年月日[0], 输入年月日[1], 日);
if (++输入年月日[1]>12){ ++输入年月日[0]; 输入年月日[1] = 1; }
if (输入年月日[0] == 输入年月日[2] && 输入年月日[1] > 输入年月日[3])break;
} while (输入年月日[0] <= 输入年月日[2]);
之下是运行结果保存在文本文件中查询从2014年1月至2016年12月的日历输出内容:查找WI
N7游戏方法,打开系统盘点击windows目录在搜索框中输入.exe回车即可在列表中找到可自行文件复制出来啦。
2014年1月2日 当天星期:4 时间:20:12:07
星期日 星期一 星期二 星期三 星期四 星期五 星期六
. . . 01 △ 02 03 04
元旦节
------------------------------------------------
05 06 07 08 09 10 11
------------------------------------------------
12 13 14 15 16 17 18
------------------------------------------------
19 20 21 22 23 24 25
------------------------------------------------
26 27 28 29 30 31 .
------------------------------------------------
. . . . . . .
------------------------------------------------
2014年2月2日 当天星期:0 时间:20:12:07
星期日 星期一 星期二 星期三 星期四 星期五 星期六
. . . . . . 01
------------------------------------------------
△ 02 03 04 05 06 07 08
------------------------------------------------
09 10 11 12 13 14 15
情人节
------------------------------------------------
16 17 18 19 20 21 22
------------------------------------------------
23 24 25 26 27 28 .
------------------------------------------------
. . . . . . .
------------------------------------------------
2014年3月2日 当天星期:0 时间:20:12:07
星期日 星期一 星期二 星期三 星期四 星期五 星期六
. . . . . . 01
------------------------------------------------
△ 02 03 04 05 06 07 08
妇女节
------------------------------------------------
09 10 11 12 13 14 15
植树节
------------------------------------------------
16 17 18 19 20 21 22
------------------------------------------------
23 24 25 26 27 28 29
------------------------------------------------
30 31 . . . . .
------------------------------------------------
2014年4月2日 当天星期:3 时间:20:12:07
星期日 星期一 星期二 星期三 星期四 星期五 星期六
. . 01 △ 02 03 04 05
愚人节
------------------------------------------------
06 07 08 09 10 11 12
------------------------------------------------
13 14 15 16 17 18 19
------------------------------------------------
20 21 22 23 24 25 26
地球日
------------------------------------------------
27 28 29 30 . . .
------------------------------------------------
. . . . . . .
------------------------------------------------
2014年5月2日 当天星期:5 时间:20:12:07
星期日 星期一 星期二 星期三 星期四 星期五 星期六
. . . . 01 △ 02 03
劳动节
------------------------------------------------
04 05 06 07 08 09 10
青年节
------------------------------------------------
11 12 13 14 15 16 17
护士节
------------------------------------------------
18 19 20 21 22 23 24
------------------------------------------------
25 26 27 28 29 30 31
------------------------------------------------
. . . . . . .
------------------------------------------------
2014年6月2日 当天星期:1 时间:20:12:07
星期日 星期一 星期二 星期三 星期四 星期五 星期六
01 △ 02 03 04 05 06 07
儿童节
------------------------------------------------
08 09 10 11 12 13 14
海洋日
------------------------------------------------
15 16 17 18 19 20 21
------------------------------------------------
22 23 24 25 26 27 28
------------------------------------------------
29 30 . . . . .
------------------------------------------------
. . . . . . .
------------------------------------------------
2014年7月2日 当天星期:3 时间:20:12:07
星期日 星期一 星期二 星期三 星期四 星期五 星期六
. . 01 △ 02 03 04 05
------------------------------------------------
06 07 08 09 10 11 12
------------------------------------------------
13 14 15 16 17 18 19
------------------------------------------------
20 21 22 23 24 25 26
------------------------------------------------
27 28 29 30 31 . .
------------------------------------------------
. . . . . . .
------------------------------------------------
2014年8月2日 当天星期:6 时间:20:12:07
星期日 星期一 星期二 星期三 星期四 星期五 星期六
. . . . . 01 △ 02
------------------------------------------------
03 04 05 06 07 08 09
------------------------------------------------
10 11 12 13 14 15 16
------------------------------------------------
17 18 19 20 21 22 23
------------------------------------------------
24 25 26 27 28 29 30
------------------------------------------------
31 . . . . . .
------------------------------------------------
2014年9月2日 当天星期:2 时间:20:12:07
星期日 星期一 星期二 星期三 星期四 星期五 星期六
. 01 △ 02 03 04 05 06
------------------------------------------------
07 08 09 10 11 12 13
------------------------------------------------
14 15 16 17 18 19 20
------------------------------------------------
21 22 23 24 25 26 27
------------------------------------------------
28 29 30 . . . .
孔子诞
------------------------------------------------
. . . . . . .
------------------------------------------------
2014年10月2日 当天星期:4 时间:20:12:07
星期日 星期一 星期二 星期三 星期四 星期五 星期六
. . . 01 △ 02 03 04
国庆节 节假日 节假日 节假日
------------------------------------------------
05 06 07 08 09 10 11
节假日 节假日 节假日
------------------------------------------------
12 13 14 15 16 17 18
------------------------------------------------
19 20 21 22 23 24 25
------------------------------------------------
26 27 28 29 30 31 .
------------------------------------------------
. . . . . . .
------------------------------------------------
2014年11月2日 当天星期:0 时间:20:12:07
星期日 星期一 星期二 星期三 星期四 星期五 星期六
. . . . . . 01
------------------------------------------------
△ 02 03 04 05 06 07 08
------------------------------------------------
09 10 11 12 13 14 15
------------------------------------------------
16 17 18 19 20 21 22
------------------------------------------------
23 24 25 26 27 28 29
------------------------------------------------
30 . . . . . .
------------------------------------------------
2014年12月2日 当天星期:2 时间:20:12:07
星期日 星期一 星期二 星期三 星期四 星期五 星期六
. 01 △ 02 03 04 05 06
------------------------------------------------
07 08 09 10 11 12 13
------------------------------------------------
14 15 16 17 18 19 20
------------------------------------------------
21 22 23 24 25 26 27
------------------------------------------------
28 29 30 31 . . .
------------------------------------------------
. . . . . . .
------------------------------------------------
2015年1月2日 当天星期:5 时间:20:12:07
星期日 星期一 星期二 星期三 星期四 星期五 星期六
. . . . 01 △ 02 03
元旦节
------------------------------------------------
04 05 06 07 08 09 10
------------------------------------------------
11 12 13 14 15 16 17
------------------------------------------------
18 19 20 21 22 23 24
------------------------------------------------
25 26 27 28 29 30 31
------------------------------------------------
. . . . . . .
------------------------------------------------
2015年2月2日 当天星期:1 时间:20:12:07
星期日 星期一 星期二 星期三 星期四 星期五 星期六
01 △ 02 03 04 05 06 07
------------------------------------------------
08 09 10 11 12 13 14
情人节
------------------------------------------------
15 16 17 18 19 20 21
------------------------------------------------
22 23 24 25 26 27 28
------------------------------------------------
. . . . . . .
------------------------------------------------
. . . . . . .
------------------------------------------------
2015年3月2日 当天星期:1 时间:20:12:07
星期日 星期一 星期二 星期三 星期四 星期五 星期六
01 △ 02 03 04 05 06 07
------------------------------------------------
08 09 10 11 12 13 14
妇女节 植树节
------------------------------------------------
15 16 17 18 19 20 21
------------------------------------------------
22 23 24 25 26 27 28
------------------------------------------------
29 30 31 . . . .
------------------------------------------------
. . . . . . .
------------------------------------------------
2015年4月2日 当天星期:4 时间:20:12:07
星期日 星期一 星期二 星期三 星期四 星期五 星期六
. . . 01 △ 02 03 04
愚人节
------------------------------------------------
05 06 07 08 09 10 11
------------------------------------------------
12 13 14 15 16 17 18
------------------------------------------------
19 20 21 22 23 24 25
地球日
------------------------------------------------
26 27 28 29 30 . .
------------------------------------------------
. . . . . . .
------------------------------------------------
2015年5月2日 当天星期:6 时间:20:12:07
星期日 星期一 星期二 星期三 星期四 星期五 星期六
. . . . . 01 △ 02
劳动节
------------------------------------------------
03 04 05 06 07 08 09
青年节
------------------------------------------------
10 11 12 13 14 15 16
护士节
------------------------------------------------
17 18 19 20 21 22 23
------------------------------------------------
24 25 26 27 28 29 30
------------------------------------------------
31 . . . . . .
------------------------------------------------
2015年6月2日 当天星期:2 时间:20:12:07
星期日 星期一 星期二 星期三 星期四 星期五 星期六
. 01 △ 02 03 04 05 06
儿童节
------------------------------------------------
07 08 09 10 11 12 13
海洋日
------------------------------------------------
14 15 16 17 18 19 20
------------------------------------------------
21 22 23 24 25 26 27
------------------------------------------------
28 29 30 . . . .
------------------------------------------------
. . . . . . .
------------------------------------------------
2015年7月2日 当天星期:4 时间:20:12:07
星期日 星期一 星期二 星期三 星期四 星期五 星期六
. . . 01 △ 02 03 04
------------------------------------------------
05 06 07 08 09 10 11
------------------------------------------------
12 13 14 15 16 17 18
------------------------------------------------
19 20 21 22 23 24 25
------------------------------------------------
26 27 28 29 30 31 .
------------------------------------------------
. . . . . . .
------------------------------------------------
2015年8月2日 当天星期:0 时间:20:12:07
星期日 星期一 星期二 星期三 星期四 星期五 星期六
. . . . . . 01
------------------------------------------------
△ 02 03 04 05 06 07 08
------------------------------------------------
09 10 11 12 13 14 15
------------------------------------------------
16 17 18 19 20 21 22
------------------------------------------------
23 24 25 26 27 28 29
------------------------------------------------
30 31 . . . . .
------------------------------------------------
2015年9月2日 当天星期:3 时间:20:12:07
星期日 星期一 星期二 星期三 星期四 星期五 星期六
. . 01 △ 02 03 04 05
------------------------------------------------
06 07 08 09 10 11 12
------------------------------------------------
13 14 15 16 17 18 19
------------------------------------------------
20 21 22 23 24 25 26
------------------------------------------------
27 28 29 30 . . .
孔子诞
------------------------------------------------
. . . . . . .
------------------------------------------------
2015年10月2日 当天星期:5 时间:20:12:07
星期日 星期一 星期二 星期三 星期四 星期五 星期六
. . . . 01 △ 02 03
国庆节 节假日 节假日
------------------------------------------------
04 05 06 07 08 09 10
节假日 节假日 节假日 节假日
------------------------------------------------
11 12 13 14 15 16 17
------------------------------------------------
18 19 20 21 22 23 24
------------------------------------------------
25 26 27 28 29 30 31
------------------------------------------------
. . . . . . .
------------------------------------------------
2015年11月2日 当天星期:1 时间:20:12:07
星期日 星期一 星期二 星期三 星期四 星期五 星期六
01 △ 02 03 04 05 06 07
------------------------------------------------
08 09 10 11 12 13 14
------------------------------------------------
15 16 17 18 19 20 21
------------------------------------------------
22 23 24 25 26 27 28
------------------------------------------------
29 30 . . . . .
------------------------------------------------
. . . . . . .
------------------------------------------------
2015年12月2日 当天星期:3 时间:20:12:07
星期日 星期一 星期二 星期三 星期四 星期五 星期六
. . 01 △ 02 03 04 05
------------------------------------------------
06 07 08 09 10 11 12
------------------------------------------------
13 14 15 16 17 18 19
------------------------------------------------
20 21 22 23 24 25 26
------------------------------------------------
27 28 29 30 31 . .
------------------------------------------------
. . . . . . .
------------------------------------------------
2016年1月2日 当天星期:6 时间:20:12:07
星期日 星期一 星期二 星期三 星期四 星期五 星期六
. . . . . 01 △ 02
元旦节
------------------------------------------------
03 04 05 06 07 08 09
------------------------------------------------
10 11 12 13 14 15 16
------------------------------------------------
17 18 19 20 21 22 23
------------------------------------------------
24 25 26 27 28 29 30
------------------------------------------------
31 . . . . . .
------------------------------------------------
2016年2月2日 当天星期:2闰月 时间:20:12:07
星期日 星期一 星期二 星期三 星期四 星期五 星期六
. 01 △ 02 03 04 05 06
------------------------------------------------
07 08 09 10 11 12 13
------------------------------------------------
14 15 16 17 18 19 20
情人节
------------------------------------------------
21 22 23 24 25 26 27
------------------------------------------------
28 29 . . . . .
------------------------------------------------
. . . . . . .
------------------------------------------------
2016年3月2日 当天星期:3 时间:20:12:07
星期日 星期一 星期二 星期三 星期四 星期五 星期六
. . 01 △ 02 03 04 05
------------------------------------------------
06 07 08 09 10 11 12
妇女节 植树节
------------------------------------------------
13 14 15 16 17 18 19
------------------------------------------------
20 21 22 23 24 25 26
------------------------------------------------
27 28 29 30 31 . .
------------------------------------------------
. . . . . . .
------------------------------------------------
2016年4月2日 当天星期:6 时间:20:12:07
星期日 星期一 星期二 星期三 星期四 星期五 星期六
. . . . . 01 △ 02
愚人节
------------------------------------------------
03 04 05 06 07 08 09
------------------------------------------------
10 11 12 13 14 15 16
------------------------------------------------
17 18 19 20 21 22 23
地球日
------------------------------------------------
24 25 26 27 28 29 30
------------------------------------------------
. . . . . . .
------------------------------------------------
2016年5月2日 当天星期:1 时间:20:12:07
星期日 星期一 星期二 星期三 星期四 星期五 星期六
01 △ 02 03 04 05 06 07
劳动节 青年节
------------------------------------------------
08 09 10 11 12 13 14
护士节
------------------------------------------------
15 16 17 18 19 20 21
------------------------------------------------
22 23 24 25 26 27 28
------------------------------------------------
29 30 31 . . . .
------------------------------------------------
. . . . . . .
------------------------------------------------
2016年6月2日 当天星期:4 时间:20:12:07
星期日 星期一 星期二 星期三 星期四 星期五 星期六
. . . 01 △ 02 03 04
儿童节
------------------------------------------------
05 06 07 08 09 10 11
海洋日
------------------------------------------------
12 13 14 15 16 17 18
------------------------------------------------
19 20 21 22 23 24 25
------------------------------------------------
26 27 28 29 30 . .
------------------------------------------------
. . . . . . .
------------------------------------------------
2016年7月2日 当天星期:6 时间:20:12:07
星期日 星期一 星期二 星期三 星期四 星期五 星期六
. . . . . 01 △ 02
------------------------------------------------
03 04 05 06 07 08 09
------------------------------------------------
10 11 12 13 14 15 16
------------------------------------------------
17 18 19 20 21 22 23
------------------------------------------------
24 25 26 27 28 29 30
------------------------------------------------
31 . . . . . .
------------------------------------------------
2016年8月2日 当天星期:2 时间:20:12:07
星期日 星期一 星期二 星期三 星期四 星期五 星期六
. 01 △ 02 03 04 05 06
------------------------------------------------
07 08 09 10 11 12 13
------------------------------------------------
14 15 16 17 18 19 20
------------------------------------------------
21 22 23 24 25 26 27
------------------------------------------------
28 29 30 31 . . .
------------------------------------------------
. . . . . . .
------------------------------------------------
2016年9月2日 当天星期:5 时间:20:12:07
星期日 星期一 星期二 星期三 星期四 星期五 星期六
. . . . 01 △ 02 03
------------------------------------------------
04 05 06 07 08 09 10
------------------------------------------------
11 12 13 14 15 16 17
------------------------------------------------
18 19 20 21 22 23 24
------------------------------------------------
25 26 27 28 29 30 .
孔子诞
------------------------------------------------
. . . . . . .
------------------------------------------------
2016年10月2日 当天星期:0 时间:20:12:07
星期日 星期一 星期二 星期三 星期四 星期五 星期六
. . . . . . 01
国庆节
------------------------------------------------
△ 02 03 04 05 06 07 08
节假日 节假日 节假日 节假日 节假日 节假日
------------------------------------------------
09 10 11 12 13 14 15
------------------------------------------------
16 17 18 19 20 21 22
------------------------------------------------
23 24 25 26 27 28 29
------------------------------------------------
30 31 . . . . .
------------------------------------------------
2016年11月2日 当天星期:3 时间:20:12:07
星期日 星期一 星期二 星期三 星期四 星期五 星期六
. . 01 △ 02 03 04 05
------------------------------------------------
06 07 08 09 10 11 12
------------------------------------------------
13 14 15 16 17 18 19
------------------------------------------------
20 21 22 23 24 25 26
------------------------------------------------
27 28 29 30 . . .
------------------------------------------------
. . . . . . .
------------------------------------------------
2016年12月2日 当天星期:5 时间:20:12:07
星期日 星期一 星期二 星期三 星期四 星期五 星期六
. . . . 01 △ 02 03
------------------------------------------------
04 05 06 07 08 09 10
------------------------------------------------
11 12 13 14 15 16 17
------------------------------------------------
18 19 20 21 22 23 24
------------------------------------------------
25 26 27 28 29 30 31
------------------------------------------------
. . . . . . .
------------------------------------------------