#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int Fday,Fmon,Ft1,Ft2,Fhr,Fmin,Fsec,Tday,Tmon,Tt1,Tt2,Thr,Tmin,Tsec,Fyyyy,Tyyyy,DWF,DWT;
char FDay[2],FMon[2],FYear[4],FHr[2],FMin[2],FSec[2],TDay[2],TMon[2],TYear[2],THr[2],TMin[2],TSec[2];
char FDate[15],TDate[15];
char *date = "11182019";
int GetLsDay()
{
char tcBuff[20];
sprintf((char *)&tcBuff
[0],"%.2s",&FDate
[0]); Fday
= atoi((const char*)tcBuff
); sprintf((char *)&tcBuff
[0],"%.2s",&FDate
[2]); Fmon
= atoi((const char*)tcBuff
); sprintf((char *)&tcBuff
[0],"%.4s",&FDate
[4]); Ft1
= atoi((const char*)tcBuff
)/256; Ft2
= atoi((const char*)tcBuff
)%256; Fyyyy
= atoi((const char*)tcBuff
); Fhr = 0; //RawdateTime.hour;
Fmin = 0; // RawdateTime.minute;
Fsec = 0; //RawdateTime.second;
Fday = Fday - 30;
if(Fday <= 0)
{
Fmon = Fmon - 1;
if(Fmon <= 0)
{
Fyyyy = Fyyyy - 1;
Fmon = 12;
Fday = 31 + Fday;
}
else
{
if((Fmon == 1) || (Fmon == 3) || (Fmon == 5) || (Fmon == 7) || (Fmon = 8) || (Fmon == 10) || (Fmon == 12))
Fday = 31 + Fday;
if((Fmon == 4) || (Fmon == 6) || (Fmon == 9) || (Fmon == 11))
Fday = 30 + Fday;
if((Fmon == 2) && (Fyyyy % 4 != 0))
{
Fday = 28 + Fday;
if(Fday <= 0)
{
Fmon = Fmon - 1;
Fday = 31 + Fday;
}
}
if((Fmon == 2) && (Fyyyy % 4 == 0))
{
Fday = 29 + Fday;
if(Fday <= 0)
{
Fmon = Fmon - 1;
Fday = 31 + Fday;
}
}
}
}
printf("Date : %02d%02d%04d",Fday
,Fmon
,Fyyyy
); }
int main()
{
int i;
sprintf((char *)&FDate
[0],"%.2s",&date
[0]);
i = GetLsDay();
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KI2luY2x1ZGUgPHN0cmluZy5oPgppbnQgRmRheSxGbW9uLEZ0MSxGdDIsRmhyLEZtaW4sRnNlYyxUZGF5LFRtb24sVHQxLFR0MixUaHIsVG1pbixUc2VjLEZ5eXl5LFR5eXl5LERXRixEV1Q7CmNoYXIgRkRheVsyXSxGTW9uWzJdLEZZZWFyWzRdLEZIclsyXSxGTWluWzJdLEZTZWNbMl0sVERheVsyXSxUTW9uWzJdLFRZZWFyWzJdLFRIclsyXSxUTWluWzJdLFRTZWNbMl07CmNoYXIgRkRhdGVbMTVdLFREYXRlWzE1XTsKCmNoYXIgKmRhdGUgPSAiMTExODIwMTkiOwoKaW50IEdldExzRGF5KCkKewpjaGFyIHRjQnVmZlsyMF07CglzcHJpbnRmKChjaGFyICopJnRjQnVmZlswXSwiJS4ycyIsJkZEYXRlWzBdKTsKCUZkYXkgPSBhdG9pKChjb25zdCBjaGFyKil0Y0J1ZmYpOwoJc3ByaW50ZigoY2hhciAqKSZ0Y0J1ZmZbMF0sIiUuMnMiLCZGRGF0ZVsyXSk7CglGbW9uID0gYXRvaSgoY29uc3QgY2hhciopdGNCdWZmKTsKCXNwcmludGYoKGNoYXIgKikmdGNCdWZmWzBdLCIlLjRzIiwmRkRhdGVbNF0pOwoJRnQxID0gYXRvaSgoY29uc3QgY2hhciopdGNCdWZmKS8yNTY7CglGdDIgPSBhdG9pKChjb25zdCBjaGFyKil0Y0J1ZmYpJTI1NjsKCUZ5eXl5ID0gYXRvaSgoY29uc3QgY2hhciopdGNCdWZmKTsKCUZociA9ICAwOyAgLy9SYXdkYXRlVGltZS5ob3VyOwoJRm1pbiA9IDA7IC8vIFJhd2RhdGVUaW1lLm1pbnV0ZTsJCQkJCQkJCQoJRnNlYyA9IDA7IC8vUmF3ZGF0ZVRpbWUuc2Vjb25kOwoKCUZkYXkgPSBGZGF5IC0gMzA7ICAgCglpZihGZGF5IDw9IDApICAgICAgICAgICAgIAoJewoJICAgRm1vbiA9IEZtb24gLSAxOyAgICAgICAgIAoJICAgaWYoRm1vbiA8PSAwKQoJICAgewoJICAgICAgRnl5eXkgPSBGeXl5eSAtIDE7ICAgIAoJICAgICAgRm1vbiA9IDEyOyAgICAgICAgICAgCgkgICAgICBGZGF5ID0gMzEgKyBGZGF5OyAgICAgCgkgICAgfQoJICAgIGVsc2UKCSAgICB7CgkgICAgICAgaWYoKEZtb24gPT0gMSkgfHwgKEZtb24gPT0gMykgfHwgKEZtb24gPT0gNSkgfHwgKEZtb24gPT0gNykgfHwgKEZtb24gPSA4KSB8fCAoRm1vbiA9PSAxMCkgfHwgKEZtb24gPT0gMTIpKQoJCSAgRmRheSA9IDMxICsgRmRheTsgICAgCgkgICAgICAgaWYoKEZtb24gPT0gNCkgfHwgKEZtb24gPT0gNikgfHwgKEZtb24gPT0gOSkgfHwgKEZtb24gPT0gMTEpKQoJCSAgRmRheSA9IDMwICsgRmRheTsKCSAgICAgICBpZigoRm1vbiA9PSAyKSAmJiAoRnl5eXkgJSA0ICE9IDApKQoJICAgICAgIHsKCQkgIEZkYXkgPSAyOCArIEZkYXk7CgkJICBpZihGZGF5IDw9IDApCgkJICB7CgkJCSBGbW9uID0gRm1vbiAtIDE7CgkJCSBGZGF5ID0gMzEgKyBGZGF5OyAgICAKCQkgIH0KCSAgICAgICB9CgkgICAgICAgaWYoKEZtb24gPT0gMikgJiYgKEZ5eXl5ICUgNCA9PSAwKSkKCSAgIHsKCQkJICBGZGF5ID0gMjkgKyBGZGF5OwoJCQkgIGlmKEZkYXkgPD0gMCkKCQkJICB7CgkJCSAgICAgRm1vbiA9IEZtb24gLSAxOwoJCQkJIEZkYXkgPSAzMSArIEZkYXk7ICAgIAoJCQkgIH0gICAgICAgICAgICAgICAKCQkgICB9CgkgICAgfQoJfQoJcHJpbnRmKCJEYXRlIDogJTAyZCUwMmQlMDRkIixGZGF5LEZtb24sRnl5eXkpOwp9CiAKaW50IG1haW4oKQp7CiAgaW50IGk7CiAKICAJc3ByaW50ZigoY2hhciAqKSZGRGF0ZVswXSwiJS4ycyIsJmRhdGVbMF0pOwogIAogaSA9IEdldExzRGF5KCk7CiAgcHJpbnRmKCJcbiBmZGF5OiAgICVkXG4iLGkpOwogCiAgcmV0dXJuIDA7Cn0=