int main(int args, const char* argc[]) { std::vector<size_t> days_to_test = { 3, 43, 87, 244, 300 }; for (auto iter = days_to_test.begin(); iter != days_to_test.end(); iter++) { DayOfYear day_of_year(*iter); day_of_year.print(); } std::map<std::string,size_t> pairs_to_test = { {"January",3}, {"February",12}, {"March",28}, {"September",1}, {"October",27} }; std::cout << std::endl; for (auto iter = pairs_to_test.begin(); iter != pairs_to_test.end(); iter++) { DayOfYear day_of_year(iter->first,iter->second); day_of_year.print(); } return 0; }
int main() { printf("%d\n", day_of_year(1989, 3, 33)); printf("%d\n", day_of_year(1989, 2, 30)); printf("%d\n", day_of_year(1989, 2, 28)); return 0; }
void demo05070_1() { int year = 2000; int month = 8; int day = 8; int yearday = day_of_year(year, month, day); printf("%d年%d月%d日是当年的第%d天 %d\n", year, month, day, yearday, is_leap(year)); year = 2014; yearday = day_of_year(year, month, day); printf("%d年%d月%d日是当年的第%d天 %d\n", year, month, day, yearday, is_leap(year)); }
int compare_dates(struct date d1, struct date d2) { int i, j; i = day_of_year (d1); j = day_of_year (d2); if (i < j) return -1; else if (i > j) return 1; else return 0; }
int main() { int year = 2014, month = 7, day = 18; // july 18th int dy = day_of_year(year, month, day); printf("%02d/%02d/%4d is day %d of the year\n", month, day, year, dy); int yday = 288; month_day(year, yday, &month, &day); printf("Day %d of the year will fall on %02d/%02d\n", yday, month, day); day_of_year(2014, 2, 31); month_day(2014, 367, &month, &day); return 0; }
int main(void) { int m, d; month_day(1988, 60, &m, &d); printf("%d %d\n", m, d); printf("%d\n", day_of_year(1987, 2, 29)); printf("%d\n", day_of_year(1988, 2, 29)); return 0; }
int main(void) { print_title("exp05"); print_title("Multidimensional array"); { show_var("%d", day_of_year(2012, 3, 31)); show_var("%d", day_of_year(2012, 6, 11)); } return 0; }
int main() { int pm, pd; printf("2007-9-13 %d\n", day_of_year(2007,9,13)); month_day(2007,256,&pm,&pd); printf("256 2007 %d %d\n", pm, pd); printf("2007-9-13 %d\n", day_of_year(2007,15,13)); month_day(2007,366,&pm,&pd); printf("366 2007 %d %d\n", pm, pd); month_day(2008,366,&pm,&pd); printf("366 2008 %d %d\n", pm, pd); }
int main(void){ int month, day; printf("year: %d, month: %d, day: %d, and is %d day of the year.\n", 2005, 5, 24, day_of_year(2005, 5, 24)); month_day(2030, 234, &month, &day); printf("the %d day is the day %d, month %d of year %d.\n", 234, day, month, 2030); printf("year: %d, month: %d, day: %d, and is %d day of the year.\n", 2025, 4, 31, day_of_year(2025, 4, 31)); return 0; }
int main(){ printf("%d\n",day_of_year(2013,1,1)); int month, day; month_day(2013,32,&month, &day); printf("%d, %d", month, day); return 0; }
int main () { int month, day; printf("day_of_year(2007, 2, 29) = %d\n", day_of_year(2007, 2, 29)); printf("day_of_year(2007, 2, 28) = %d\n", day_of_year(2007, 2, 28)); printf("month_day(2007, 366, &month, &day) = %d\n", month_day(2007, 366, &month, &day)); printf("month_day(2007, 365, &month, &day) = %d, ", month_day(2007, 365, &month, &day)); printf("month = %d, day = %d\n", month, day); return 0; }
int main(){ char s[LIMIT]; char option = 1; int month, day, year; printf("Calculate day of year. Enter year, month, then day\n"); get_line(s, LIMIT); year = atoi(s); get_line(s, LIMIT); month = atoi(s); get_line(s, LIMIT); day = atoi(s); day_of_year(&year, &month, &day); printf("%d\n\n", day); printf("Calculate month and day. Enter year and day\n"); get_line(s, LIMIT); year = atoi(s); get_line(s, LIMIT); day = atoi(s); month_day(&year, &day, &month, &day); printf("%d %d\n", month, day); return 0; }
int main(){ int m, d; int dy = day_of_year(2015, 5, 10); month_day(2015, 130, &m, &d); printf("%d, %d, %d\n", dy, m, d); return 0; }
int main() { int t = day_of_year(2016, 2, 11); int *pmonth, *pday; month_day(2016, t, &pmonth, &pday); printf("day is [%d]\n", t); printf("month[%d] and day[%d]\n",pmonth, pday); }
int main() { char buf[1024]; while (printf("[YEAR YEARDAY] or [YEAR MONTH DAY]> "), gets(buf) != NULL) { int year, snd_arg, day; switch (sscanf(buf, "%d%d%d", &year, &snd_arg, &day)) { case 3: { int month = snd_arg, yearday; yearday = day_of_year(year, month, day); printf("YEAR %d MONTH %d DAY %d = YEARDAY %d\n", year, month, day, yearday); break; } case 2: { int yearday = snd_arg; int month, day; month_day(year, yearday, &month, &day); printf("YEARDAY %d of YEAR %d = MONTH %d DAY %d\n", yearday, year, month, day); break; } default: printf("input format error\n"); break; } } return 0; }
main() { int n; int year,month,day; int day_num; printf("-------------------------------\n"); printf("* 1.日期转换天数 *\n"); printf("* 2.天数转换日期 *\n"); printf("-------------------------------\n"); printf("请选择功能\n\n"); scanf("%d",&n); switch (n) { case 1: printf("请输入日期(用空格隔开)\n"); scanf("%d %d %d",&year,&month,&day); day_num=day_of_year(year,month,day); while(!day_num)/*不要加!,因为非零都是真,即-1也是真,所以不能用-1作为返回值*/ { printf("输入错误:日期超出范围!\n"); printf("-------------------------------\n"); printf("请重新输入\n"); printf("请输入日期(用空格隔开)\n"); scanf("%d %d %d",&year,&month,&day); day_num=day_of_year(year,month,day); } printf("该天是该年的第%d天\n",day_num); break; case 2: printf("想要知道某年第几天的日期(空格隔开)?\n"); scanf("%d %d",&year,&day_num); month_day(year,day_num,&month,&day); while(!month&&!day) { printf("输入错误:年数小于0或天数太多!\n"); printf("-------------------------------\n"); printf("请重新输入\n"); printf("想要知道某年第几天的日期(空格隔开)?\n"); scanf("%d %d",&year,&day_num); month_day(year,day_num,&month,&day); } printf("该天日期是:%d 月 %d 日\n",month,day); break; } }
//for testing purpose main() { int a; int b; month_day(1990,270,&a,&b); printf("month:%d\nday:%d\n",a,b); month_day(1991,366,&a,&b); printf("month:%d\nday:%d\n",a,b); month_day(1992,366,&a,&b); printf("month:%d\nday:%d\n",a,b); month_day(1993,366,&a,&b); printf("month:%d\nday:%d\n",a,b); printf("%d\n",day_of_year(1990,12,31)); printf("%d\n",day_of_year(1991,12,31)); printf("%d\n",day_of_year(1992,12,31)); printf("%d\n",day_of_year(1993,12,31)); }
int main(int argc, char const *argv[]) { int m, d; month_day(2000, 60, &m, &d); printf("Month is %d and day %d\n", m, d); printf("Day of the year %d", day_of_year(2000, 3, 1)); return 0; }
fivePointSeven() { int days = day_of_year(1980, 11, 14); printf("The days passed from 1980/01/01 to 1980/11/14: %d\n", days); int month; int day; month_day(1980, days, &month, &day); printf("The date is 1980/%d/%d after %d days passed since 1980/01/01\n", month, day, days); }
int main() { printf("%d\n", day_of_year(2015, 4, 14)); int day, month; month_day(2015, 104, &day, &month); printf("%d %d\n", day, month); }
// isoweek_from_date - // Computes the ISO week number from the specified date. static void isoweek_from_date ( int y, int m, int d, int * iso_week, int * iso_year ) { int y_leap = IS_LEAP ( y ), y_previous_leap = IS_LEAP ( y - 1 ) ; int doy = day_of_year ( y, m, d ) + 1 ; int weekday, jan1_weekday ; //if ( y_leap && m > 2 ) // doy ++ ; jan1_weekday = day_of_week ( y, 1, 1, 1 ) ; weekday = day_of_week ( y, m, d, 1 ) ; if ( ! weekday ) weekday = 7 ; if ( ! jan1_weekday ) jan1_weekday = 7 ; /* Find if Y M D falls in year Y-1, week# 52 or 53 */ if ( doy <= ( 8 - jan1_weekday ) && jan1_weekday > 4 ) { * iso_year = y - 1 ; if ( jan1_weekday == 5 || ( y_previous_leap && jan1_weekday == 6 ) ) * iso_week = 53 ; else * iso_week = 52 ; } else * iso_year = y ; /* Find if Y M D falls in year Y+1, week# 1 */ if ( * iso_year == y ) { int i = ( y_leap ) ? 366 : 365 ; if ( ( i - ( doy - y_leap ) ) < 4 - weekday ) { ( * iso_year ) ++ ; * iso_week = 1 ; return ; } } /* Find if Y M D falls in year Y, week# 1 through 53 */ if ( * iso_year == y ) { int j = doy + ( 7 - weekday ) + ( jan1_weekday - 1 ) ; * iso_week = j / 7 ; if ( jan1_weekday ) ( * iso_week ) -- ; } }
int day_of_year(int month, int day, int year) { int leap_year[12] = {31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; int common_year[12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; if (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0)) { if (month == 0) return 0; else return day + day_of_year(month - 1, leap_year[month - 2], year); } else { if (month == 0) return 0; else return day + day_of_year(month - 1, common_year[month - 2], year); } }
int main() { int m, d; printf("%d\n", day_of_year(2014, 9, 24)); month_day(2014, 60, &m, &d); printf("%d/%d\n", m, d); return 0; }
long diffdate (struct date *d1,struct date *d2) /*********** * Describe : вычисляет пpомежуток между двумя датами в днях * Params : struct date *d1 - пеpвая дата * : struct date *d2 - втоpая дата * Return : long - число дней от d1 до d2 * Call : ***********/ { int i; long days=0; days += (DAYS_IN_YEAR+leap(d1->da_year))*(d1->da_year!=d2->da_year) - day_of_year(d1); for (i=d1->da_year+1;i<d2->da_year;i++) days += DAYS_IN_YEAR + leap(i); days += day_of_year(d2); return days; }
int main (void) { struct date x, y; printf("Please enter day and month, for example 12/02 : "); scanf("%d/%d", &x.day, &x.month); printf("Please enter day and month again : "); scanf("%d/%d", &y.day, &y.month); printf("First date value is %d.\n", day_of_year(x)); printf("Second date value is %d.\n", day_of_year(y)); if (compare_dates(x,y) > 0) printf("Second date is earlier.\n"); else if (compare_dates(x,y) == 0) printf("Two dates are same.\n"); else printf("First date is earlier.\n"); return 0; }
main() { int s; int day=3; int month=10; s=day_of_year(2014,12,10); month_day(2014,s,&month,&day); printf("%d %d\n",day,month); }
int main(void) { int month = 0; int day = 0; printf("1985-12-16 is the %d th day of 1985.\n", day_of_year(1985, 12, 16)); month_day(1985, 350, &month, &day); printf("The %d th day of year %d is %d-%d-%d.\n", 350, 1985, 1985, month, day); return 0; }
int main(void) { int a, b; printf("%dth day of the year\n", day_of_year(2001, 5, 30)); month_day(2000, 366, &a, &b); printf("month = %d day = %d\n", a, b); return 0; }
int main(void) { int month, day; month_day(1997, 139, &month, &day); printf("19.05.1997 was %dth day of year\n", day_of_year(1997, 5, 19)); printf("139 day of 1997 was %d.0%d", day, month); return 0; }
/* ****************************** Main ****************************** */ int main(int argc, char *argv[]) { int month, day; month_day(1987, 50, &month, &day); printf("%s,%d\n", month_name(month), day); printf("%d\n", day_of_year(2001, 12, 31)); return 0; }