├── .gitignore ├── README.md └── calender.c /.gitignore: -------------------------------------------------------------------------------- 1 | /cal.exe 2 | /calender.exe -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ![Calender-Using-C-Language](https://socialify.git.ci/sachinl0har/Calender-Using-C-Language/image?description=1&font=Source%20Code%20Pro&forks=1&issues=1&language=1&owner=1&pulls=1&stargazers=1&theme=Dark) 2 | # Calender-Using-C-Language 3 | -------------------------------------------------------------------------------- /calender.c: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | int get_1st_weekday(int year) 5 | { 6 | 7 | int d; 8 | d = (((year - 1) * 365) + ((year - 1) / 4) - ((year - 1) / 100) + ((year) / 400) + 1) % 7; 9 | return d; 10 | } 11 | 12 | int main() 13 | { 14 | system("cls"); 15 | system("Color 0A"); 16 | int year, month, day, daysInMonth, weekDay = 0, startingDay; 17 | printf("\nEnter Year:"); 18 | scanf("%d", &year); 19 | 20 | char *months[] = {"January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"}; 21 | int monthDay[] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; 22 | 23 | if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) 24 | monthDay[1] = 29; 25 | 26 | startingDay = get_1st_weekday(year); 27 | 28 | for (month = 0; month < 12; month++) 29 | { 30 | 31 | daysInMonth = monthDay[month]; 32 | printf("\n\n---------------%s-------------------\n", months[month]); 33 | printf("\n Sun Mon Tue Wed Thurs Fri Sat\n"); 34 | 35 | for (weekDay = 0; weekDay < startingDay; weekDay++) 36 | printf(" "); 37 | 38 | for (day = 1; day <= daysInMonth; day++) 39 | { 40 | printf("%5d", day); 41 | 42 | if (++weekDay > 6) 43 | { 44 | printf("\n"); 45 | weekDay = 0; 46 | } 47 | startingDay = weekDay; 48 | } 49 | } 50 | } 51 | --------------------------------------------------------------------------------