/* File: mycal4.c Step 4. Find out the number of days in a given month and year. */ #include #include "genlib.h" #include "simpio.h" int YearDays(int year) ; int MonthDays(int month, int year) ; bool IsLeapYear(int year) ; main() { int year, month ; int days_in_year, days_in_month ; printf("year =? ") ; year = GetInteger() ; printf("month =? ") ; month = GetInteger() ; days_in_year = YearDays(year) ; days_in_month = MonthDays(month,year) ; printf("year days = %d, month days = %d\n", days_in_year, days_in_month) ; } int YearDays(int year) { if (IsLeapYear(year)) { return(366) ; } else { return(365) ; } } int MonthDays(int month, int year) { switch (month) { case 2: if (IsLeapYear(year)) return (29); return (28); case 4: case 6: case 9: case 11: return (30); default: return (31); } } bool IsLeapYear(int year) { return ( ((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0) ); }