用c語言編寫乙個萬年曆

2021-07-02 11:45:02 字數 1599 閱讀 6422

33

#include

#include

typedef struct  /*於是在宣告變數的時候就可:stu stu1;(如果沒有typedef就必須用struct student stu1;來宣告)

這裡的stu實際上就是struct student的別名。stu==struct student*/

*date;   /*給結構體重命名,比如在定義了typedef struct node node;申請乙個node型變數可用node來代替,如node a;相當於struct node a;*/

date newdate(void);

int destroydate(date date);

int daysamonth(date date);

int checkdate(date date);

int setdate(date date,int year,int month,int day);

int getweek(date date);

int queryday(void);

int showmonth(date date);

int querymonth(void);

int queryyear(void);

int confirmexit(void);

int calendar(void);

date newdate(void)

int destroydate(date date)

int daysamonth(date date)

if(date->month==2)

if(date->year%4==0&&date->year%400!=0||date->year%400==0)

days=29;

else

days=28;

return days;

}int checkdate(date date)

int setdate(date date,int year,int month,int day)

int getweek(date date)

return (day+2*month+3*(month+1)/5+year+year/4-year/100+year/400)%7+1;

}int queryday(void)

;if(!(date=newdate()))

return 0;

doelse 

}while(cont=='y'||cont=='y');

destroydate(date);

return 1;

}int showmonth(date date)

{int startweek;

int days;

int i;

if(!date)

return 0;

startweek=getweek(date);

days=daysamonth(date);

printf("  s   m   t   w   s   f   s \n");

startweek=startweek%7;

for(i=0;i//本程式在devc上面試執行,測試成功。

C語言編寫萬年曆

上一次的萬年曆在後來的測試發現當1號是週日時,無法正確輸出,後來加了語句 if week 0 week 7 並且在確定當前日期到1900年1月1日的方法進行改進,不在採用for迴圈來遍歷1900年到當前年份之間閏年的個數,而是直接用 year 1900 4的方法。這個程式經過了1900,1904,1...

c語言 編寫 簡單萬年曆

初學c語言,許多人 往往不能靈活的運用自己所學的知識 就拿今天這個萬年曆來說,當時我們c語言老師布置這個作業時,我簡直一臉蒙蔽。回頭交作業時 就洋洋灑灑寫了12個並列的for迴圈糊弄一下自己,不知道老師看了之後會不會回想起當年語文老師口頭常講的排比句。幸好現在抓住大學的小尾巴,完成了這份作 業。in...

萬年曆 C語言

顯示效果 大概步驟 1.顯示主介面 void showmenu char temp 10 2.判斷是否為閏年 bool isleap int year 3.計算總天數 int daysum int year,int month 4.顯示日曆 showcalendar int sum,int year...