教你如何用C語言實現的乙個萬年曆

2021-12-30 01:25:51 字數 2948 閱讀 3673

該程式簡單地輸入乙個年份(2023年之後的年份),隨後程式輸出該年份十二個月的日曆。

#include

#define mon 1

#define tues 2

#define wed 3

#define thur 4

#define fri 5

#define sat 6

#define sun 0

#define january_days 31

#define february_days 28

#define march_days 31

#define april_days 30

#define may_days 31

#define june_days 30

#define july_days 31

#define august_days 31

#define september_days 30

#define october_days 31

#define november_days 30

#define december_days 31

#define first1month january_days

#define first2month january_days+february_days

#define first3month january_days+february_days+march_days

#define first4month january_days+february_days+march_days+april_days

#define first5month january_days+february_days+march_days+april_days+may_days

#define first6month january_days+february_days+march_days+april_days+may_days+june_days

#define first7month january_days+february_days+march_days+april_days+may_days+june_days \

+july_days

#define first8month january_days+february_days+march_days+april_days+may_days+june_days \

+july_days+august_days

#define first9month january_days+february_days+march_days+april_days+may_days+june_days \

+july_days+august_days+september_days

#define first10month january_days+february_days+march_days+april_days+may_days+june_days \

+july_days+august_days+september_days+october_days

#define first11month january_days+february_days+march_days+april_days+may_days+june_days \

+july_days+august_days+september_days+october_days+november_days

int known_weekday = tues;

int known_year = 1901;

int konwn_month = 1;

int known_day = 1;

int day_count(int month)

}/*char * month_name(int month)

}*/char * month_name(int month)

}/*按格式列印某年某月名稱*/

void first_line_print(int month, int year)

/*按格式列印星期名稱*/

void week_print()

/*計算該年該月份與已知日子之間的距離天數*/

int date_distance_count(int month, int year)

}if (month > 2)}}

else

if (year == known_year)

}distance = (year - known_year)*365 + leap_year_count + day_count(month);

return distance;

}/*確定該月份第一天是星期幾*/

int makesure_firstday_weekday(int month, int year)

/*依次列印出該月份的日子*/

void print_in_turn(int month, int firstday, int year)

switch(month)

}break;

}case 2:

}break;

}else /*平年*/

}break;}}

case 4:

case 6:

case 9:

case 11:

}break;}}

}void date_print(int month, int year)

void main_month(int month, int year)

void main_calendar(int year)

}int main()

main_calendar(year);

scanf(" ");

return 0;

}執行效果圖:

C語言實現的乙個萬年曆小程式

該程式簡單地輸入乙個年份 1901年之後的年份 隨後程式輸出該年份十二個月的日曆。include define mon 1 define tues 2 define wed 3 define thur 4 define fri 5 define sat 6 define sun 0 define j...

C語言實現萬年曆

c語言實現萬年曆 摘要 介紹使用c語言實現萬年曆的列印與輸出。關鍵字 c 萬年曆 列印與輸出 一 引言 萬年曆是我們日常生活中經常用到的一種非常實用的工具。由於工作繁忙,人們常常忘記某一天是星期幾,或者想快速地查詢某一年中某一天是星期幾,這裡萬年曆就能派上用場了。本文將介紹一種萬年曆的實現方法,通過...

用c語言編寫乙個萬年曆

33 include include typedef struct 於是在宣告變數的時候就可 stu stu1 如果沒有typedef就必須用struct student stu1 來宣告 這裡的stu實際上就是struct student的別名。stu struct student date 給結...