資源簡介
簡易,一目了然.
GetJieqi()函數為二十四節氣判斷函數
返回值 jieqi 對應24種節氣
DOS下的小程序
代碼片段和文件信息
//?jieqi01.cpp?:?定義控制臺應用程序的入口點。
//
#include?“stdafx.h“
#include?“conio.h“
int??GetJieqi(int?year?int?month?int?day);
int?_tmain(int?argc?_TCHAR*?argv[])
{
int?year;
int?month;
int?day;
int?jieqi;
????
printf?(“請逐行輸入年月日\n“);
scanf??(“%d%d%d“&year&month&day);
jieqi?=?GetJieqi(?year?month?day);
printf(“%d“jieqi);
?
return?0;
getch();
}
int??GetJieqi(int?year?int?month?int?day)
{
int?jieqid[200][24];
int?jieqi;
char?*jieqis[24]?={“立春““雨水““驚蟄““春分““清明““谷雨““立夏““小滿““芒種““夏至““小暑““大暑““立秋““處暑““白露““秋分““寒露““霜降““立冬““小雪““大雪““冬至““小寒““大寒“};
????
int?i;
???
int?y;
????
double?C19[24]?=?{4.629519.45996.382621.41555.5920.8886.31821.866.522.207.92823.658.3523.958.4423.8229.09824.2188.21823.087.922.606.1120.84?};
double?C20[24]?=?{3.8718.735.6320.6464.8120.15.5221.045.67821.377.10822.837.523.137.64623.0428.31823.4387.43822.367.1821.945.405520.12?};
for(?y?=?0;?y?200;?y++)
{
for(?i?=?0;?i?24;?i++)
{
if?(year?<2000)
{??if?(i<3)
???{
jieqid[y][i]?=(int)(((?year?-?1900)*0.2422?+?C19[i])-?(?y?-?1)/4);
???}
???else
???{
jieqid[y][i]?=?(int)(((?year?-?1900)*0.2422?+?C19[i])-?(?y)/4);
???}
??}
else?
{
if?(i<3)
???{
jieqid[y][i]?=(int)(((?year?-?2000)*0.2422?+?C20[i])-?(?year?-?2000-?1)/4);
???}
???else
???{
jieqid[y][i]?=(int)(((?year?-?2000)*0.2422?+?C20[i])-?(?year?-?2000)/4);
???}
?}
}
}
????jieqid[126][1]?=??jieqid[126][1]?-?1;//例外情況
jieqid[184][3]?=??jieqid[184][3]?+?1;
jieqid[11][6]?=??jieqid[11][6]?+?1;
jieqid[108][7]?=??jieqid[108][7]?+?1;
jieqid[2][8]?=??jieqid[2][8]?+?1;
jieqid[28][9]?=??jieqid[28][9]?+?1;
jieqid[25][10]?=??jieqid[25][10]?+?1;
jieqid[116][10]?=??jieqid[116][10]?+?1;
jieqid[22][11]?=??jieqid[22][11]?+?1;
????jieqid[102][12]?=??jieqid[102][12]?+?1;
????jieqid[27][14]?=??jieqid[27][14]?+?1;
????jieqid[42][15]?=??jieqid[42][15]?+?1;
jieqid[189][17]?=??jieqid[189][17]?+?1;
jieqid[189][18]?=??jieqid[189][18]?+?1;
????jieqid[78][19]?=??jieqid[78][19]?+?1;
????jieqid[54][20]?=??jieqid[54][20]?+?1;
jieqid[18][21]?=??jieqid[18][21]?-?1;
jieqid[121][21]?=??jieqid[121][21]?-?1;
????jieqid[82][22]?=??jieqid[82][22]?+?1;
jieqid[119][22]?=??jieqid[119][22]?-?1;
jieqid[18][21]?=??jieqid[18][21]?-?1;
jieqid[182][23]?=??jieqid[182][23]?+?1;
y?=?year?-?1900;
switch(month)
{
case?2:
{
if?(day?? {
jieqi?=?23;
}
else?if?((day?>=?jieqid[y][0])?&?(day? {
jieqi?=?0;
????
}
else
{
jieqi?=1;
}
break;
}
評論
共有 條評論